您需要創建一個NSMutableArray
的實例並將其分配給屬性。
由於具有該屬性的對象是在故事板中創建的UIViewController
,因此您可以在幾個不同的位置執行此操作。您可以覆蓋initWithCoder:
或awakeFromNib
或viewDidLoad
。
如果覆蓋initWithCoder:
,則必須調用super
方法。
如果你在viewDidLoad
中這樣做,直到加載視圖時纔會創建數組,這不一定要馬上發生。
我建議在awakeFromNib
做:
@synthesize myArray = _myArray;
- (void)awakeFromNib {
_myArray = [[NSMutableArray alloc] init];
}
另一種選擇是僅通過重寫屬性的getter方法創建數組懶洋洋地:
@synthesize myArray = _myArray;
- (NSMutableArray *)myArray {
if (!_myArray)
_myArray = [[NSMutableArray alloc] init];
return _myArray;
}
如果你這樣做,這是非常重要的是,您始終使用getter方法(self.myArray
或[self myArray]
)訪問陣列,並且決不要直接訪問實例變量(_myArray
)。
什麼是具有'NSMutableArray'屬性的類?它的超類是什麼?你是在代碼中還是在筆尖或故事板中創建類實例? – 2012-02-20 06:57:13
它是鏈接到故事板視圖的UIViewController的子類。 – TijuanaKez 2012-02-20 07:08:09