我不确定如何将这一点放到标题中,但这就是我想要的。假设我以编程方式创建了许多UIlabels,我希望它们具有名称label1,label2,label3等。
如何为下一个标签命名新标签。并且说我知道我想在这一点上引用label3,但我可能想在另一点引用另一个数字,我将如何在代码中编写它?
所以不是label5.text = ...
,我能放什么?因为它并不总是label5。
答案 0 :(得分:5)
不要混淆自己!这很有想法:
for (int i=1; i<5; i++){
UILabel ([NSString stringWithFormat@"label%d", i]) = [[UILabel alloc] init];}
或类似的东西会起作用。我们使用的名称是为了方便起见,编译器使用指向对象的指针而不是标签。
可能有效的是一个数组或一组指针:
NSMutableArray *labels = [[NSMutableArray alloc] init];
for (int i=1; i<5; i++){
[labels addObject:[UILabel alloc] initWith...];
}
...
[[labels objectAtIndex:index] setText:newText];
答案 1 :(得分:0)
Label myLabel = label5;
myLabel.text = ...
myLabel = label7;
myLabel.text = ...
答案 2 :(得分:0)
这是UILabels的NSMutableArray的工作。使用addObject附加到数组。使用objectAtIndex:来引用i'Th。