在没有实际编写的情况下参考某些内容的名称

And*_*rew 0 iphone cocoa-touch objective-c

我不确定如何把这一点放到标题中,但这就是我想要的.假设我以编程方式创建了许多UIlabels,我希望它们具有名称label1,label2,label3等.

我如何命名下一个新标签.并且说我知道我想在这一点上引用label3,但我可能想在另一点引用另一个数字,我将如何在代码中写入?

所以不是label5.text = ...,我能放什么?因为它并不总是label5.

Luk*_*uke 5

不要混淆自己!这很有想法:

for (int i=1; i<5; i++){
    UILabel ([NSString stringWithFormat@"label%d", i]) = [[UILabel alloc] init];}
Run Code Online (Sandbox Code Playgroud)

或类似的东西会起作用.我们使用的名称是为了方便起见,编译器使用指向对象的指针而不是标签.

可能有效的是一个数组或一组指针:

NSMutableArray *labels = [[NSMutableArray alloc] init];
for (int i=1; i<5; i++){
    [labels addObject:[UILabel alloc] initWith...];
}
...
[[labels objectAtIndex:index] setText:newText];
Run Code Online (Sandbox Code Playgroud)