将名称设置为UILabel为label1,label2,依此类推

时间:2014-01-10 06:11:29

标签: ios objective-c uilabel

我想将名称设置为UILabel作为label1,label2,label3等。为此,我不想为label1,label2,...编写代码。现在我正在使用这种方法。

 UILabel *label1 = [[UILabel alloc]initWithFrame:CGRectMake(0, 40, 320, 420)];
 UILabel *label2 = [[UILabel alloc]initWithFrame:CGRectMake(0, 40, 320, 420)];
 UILabel *label3 = [[UILabel alloc]initWithFrame:CGRectMake(0, 40, 320, 420)];
 .....  

但这不是一个好方法。我只想为所有标签写一行代码 我该如何实现呢?是否可以将%d与标签一起使用。
请帮忙。

2 个答案:

答案 0 :(得分:2)

只需设置标签标签并使用标签

获取数据
for (int i=0; i<4; i++) {
UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(0, 40, 320, 420)];
label.tag = i;
[self.view addSubview:label];
}

答案 1 :(得分:2)

您可以使用Label的标签来区分其他实例。你正在寻找没有这样的逻辑,并且不能区分对象。

 for (int i = 0; i < 4; i++) {
     UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(0, 40, 320, 420)];
     label.tag = i;
     [self.view addSubview:label];

}

if ([self.view viewWithTag:i]) {
    [(UILabel *)[self.view viewWithTag:i] setText:@"Update Text"];
}