我有不同的UILabels,我想隐藏使用for循环。隐藏NSMutableArray中的所有UILabels
@interface MyViewController : UIViewController {
NSMutableArray * labelArray;
}
@property (nonatomic, retain) IBOutlet UILabel *label1, *label2, *label3;
...
-(void)viewDidLoad {
[super viewDidLoad];
[labelArray initWithObjects:label1,label2,label3,nil];
for(int i=0; i<sizeof(labelArray); i++){
UILabel *label = [labelArray objectAtIndex:i];
label.hidden = !label.hidden;
}
}
执行此操作时,标签不会隐藏。他们已经在Interface Builder中“迷上”了。我做错了什么?谢谢!
1.你有没有alloc'd labelArray? 2.不要使用sizeof(labelArray),而是使用[labelArray count]来确定索引范围。不要忘记labelArray是一个指针,sizeof()将返回指针大小。 – viggio24