我知道一个视图只能是一个superview的子视图,所以是否可以复制UILabel所以我不必复制设置代码或编写一个函数来创建它?
答案 0 :(得分:12)
不,UILabel类没有实现NSCopying协议。如果您想为所有视图添加相同的视图,可能是自定义视图的子类化将是最好的方法。
答案 1 :(得分:0)
正如@starkhalo所说,UILabel
不符合NSCopying
。所以你不能使用UILabel的复制方法。
NSObject
的Iphone文档清楚地说 -
NSObject
本身不支持NSCopying
协议。子类必须支持该协议并实现copyWithZone:
方法。
答案 2 :(得分:-1)
您可以为该标签设置单独的XIB,并调用[[NSBundle mainBundle] loadNibNamed:@"LabelNib" owner:self options:nil];
将该nib的文件所有者设置为您的委托类,并进行正确的连接。现在,您可以根据需要多次将标签添加到视图中,并修改每个标签(例如,使用for循环)。
答案 3 :(得分:-13)