我有我的定製CustomTableViewCell : UITableViewCell
與@property(nonatomic, retain) Model* model;
。還有一個視圖的xib文件(具有正確配置的類和重用標識符的單元)。在我的自定義單元格類,有一個- init
實現:從筆尖加載定製單元問題
- (id)init
{
NSArray* array = [[NSBundle mainBundle] loadNibNamed:@"CustomTableViewCell" owner:self options:nil];
CustomTableViewCell* cell = [[array firstObject] retain];
self = cell;
self.model = [[Model alloc] init] autorelease];
self.model.someString = @"foo";
// here I can access self.model with no problem
return self;
// after method return, self.model refers to 0x0
}
我的問題是...的- init
的歸來後,self.model
是零。小區正在工作,但沒有model
。我不知道爲什麼。有任何想法嗎?我想,我的- init
不是猶太...
編輯
我發現,這個模型是沒有零後返回,但被稱爲表視圖數據源的方法時。此外,表格視圖指的是0x0在那段時間令我感到驚奇。完全怪異!感謝您的努力,我將用代碼完成我的單元格...
當你說你可以訪問self.model沒有任何問題,你是什麼意思?你可以在日誌或調試器中看到一個有效的對象,或者你沒有從init方法得到任何運行時錯誤? – jrturton
讓你的單元格擁有一個「模型」似乎是一種不尋常的模式 - 顯然,我不知道它在應用程序的上下文中是什麼,但是如果它指向單元格中顯示的數據,那麼這不是正常的做事方式,由於細胞再利用。您的單元格通常會在表視圖數據源cellforrowatindexpath方法期間從定製的xib中加載,以及在該點傳遞給它的任何數據。 – jrturton