更新:我現在已經解決了這個問題 - 請參閱我自己的意見。令人驚訝的是,多次寫出問題可能會在您再次瀏覽時導致解決問題!從NIB加載自定義UITableViewCell問題
我必須閱讀每個線程的SO和蘋果的例子,但我不能得到這個在我的情況下工作,我不知道我做錯了嗎?
我已經用XCode 4在IB中製作了一個自定義單元格。該文件的所有者被設置爲表格的自定義視圖控制器的類,並且我有一個IBOutlet用於UITableView單元格,它可以連接到我可以告訴。我通常通過代碼完成我所有的表格單元格,並使用快速滾動方法,但是對於這個項目,我真的需要使用nib來加載單元格內容,我有一些我無法弄清楚的悲傷。
所以在我的接口文件中,
@interface myCustomTableViewController <various delegates> {
UITableViewCell *customNibCell;
...
}
@property (nonatomic,assign) IBOutlet UITableViewCell *customNibCell;
在customTableViewController中,我在我的cellForRowAtIndexPath中執行此操作;
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@:"customDirCell"];
if (cell == nil) {
[[NSBundle mainBundle] loadNibNamed:@"DirectoryCellWithMenu" owner:self options: nil];
cell = customNibCell;
self.customNibCell = nil;
}
[self configureCell:cell atRow:indexPath.row];
而我的configureCell方法可以達到這個單元格,並將我想要自定義的東西拉出來。
UIImageView *fileImageView = (UIImageView *)[cell viewWithTag:3];
UILabel *headingTextLabel = (UILabel *)[cell viewWithTag:4];
UILabel *modifiedTextLabel = (UILabel *)[cell viewWithTag:5];
UILabel *sizeTextLabel = (UILabel *)[cell viewWithTag:6];
的問題
細胞都加載到表中儘可能多的好,我可以看到正確的佈局。此外,我在各種按鈕上定義的自定義操作都會觸發OK,因此看起來單元格已正確連接。
但沒有定製的作品 - 我似乎無法改變任何標籤,例如和調查的文本,每次的結果[細胞viewWithTag:NN]是零其中明確路標的問題,但我看不出原因是什麼。
- 用於 的UITableViewCell標識符被設定爲 「customDirCell」
- 的對象標識爲標籤 等確實-3,4,5,6-根據 IB
- 的XIB正好包含1對象, UITableViewCell
我看不出任何錯誤的創建nib文件或代碼,但我顯然缺少一些東西!
任何一種靈魂都可以在我應該尋找的地方發光嗎?
ARGGGH。好的,所以我發現了這個問題。我混淆了Object屬性(由IB設置)和Tag屬性 - 這是我手動設置的。希望這可以幫助其他可能陷入我陷阱的人! – Roger 2011-04-18 12:30:46