Iphone 如何将对象添加到IBMoutletCollection?

Iphone 如何将对象添加到IBMoutletCollection?,iphone,xcode,nsarray,uilabel,iboutlet,Iphone,Xcode,Nsarray,Uilabel,Iboutlet,我在班上宣布不安全 NSArray *labelsArray; 我把它变成了一个财产 @property (nonatomic,retain) IBOutletCollection(UILabel) NSArray *labelsArray; 我将它连接到IB中的四个UILabel。我分配了数组。当我这么做的时候 NSLog(@"labelsArray.count %i",[labelsArray count]); 它告诉我labelsArray的计数是0。我应该如

我在班上宣布不安全

NSArray             *labelsArray;
我把它变成了一个财产

@property (nonatomic,retain) IBOutletCollection(UILabel) NSArray *labelsArray;
我将它连接到IB中的四个UILabel。我分配了数组。当我这么做的时候

NSLog(@"labelsArray.count %i",[labelsArray count]);

它告诉我labelsArray的计数是0。我应该如何将这些标签添加到数组中?

您在哪里调用NSLog语句?在调用viewDidLoad之前,不会实例化该数组

我分配了数组


可能是当加载NIB文件时,会自动为您实例化阵列,重新分配它会创建新(空)版本的阵列。尽量不要分配它。另外,请确保在加载IB元素时,将数组记录在
viewDidLoad
中。

“我分配了数组”-这是什么意思?我的意思是,我没有分配数组的计数为4。再一次非常感谢您,再问一个问题:我应该在dealloc中释放数组还是不需要?您应该通过viewDidUnload中的访问器(self.labelArray=nil;)将其设置为nil,然后在dealloc中释放它。您确定吗?如果我释放阵列,我的应用程序将崩溃。如果我不这样做,显然你也应该在dealloc中将它们设置为零。