我想将名称设置为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与标签一起使用。
请帮忙。
答案 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"];
}