重要編輯:我發佈了錯誤的代碼,像一個白癡。我在發佈錯誤信息時曾嘗試解決此問題,而不是第一個錯誤。請不要聽我的啞巴。創建自定義表格單元,無法訪問屬性
我在Xcode中創建了Facebook Feed應用程序,並且在創建表格的自定義單元格時遇到了麻煩。我試圖給自定義單元格上的兩個UILabel賦值,並且它給了我錯誤「沒有可見的@interface for'JSONFeedItemCell'聲明選擇器'nameLabel'」。我的代碼如下:
主視圖控制器
- (void)viewDidLoad
{
UINib *nib = [UINib nibWithNibName:@"JSONFeedItemCell" bundle:nil];
[[self tableView] registerNib:nib forCellReuseIdentifier:@"JSONFeedItemCell"];
... // other stuff, not relevant
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
JSONFeedItemCell *cell = [tableView dequeueReusableCellWithIdentifier:
@"JSONFeedItemCell"];
NSDictionary *p = [[[JSONFeedItemStore sharedStore] allItems]
objectAtIndex:[indexPath row]];
[[cell nameLabel] setText:@"The Name"];
return cell;
}
Cell類
#import <Foundation/Foundation.h>
@interface JSONFeedItemCell : UITableViewCell
{
}
@property (weak, nonatomic) IBOutlet UIImageView *imageView;
@property (weak, nonatomic) IBOutlet UILabel *detailLabel;
@property (weak, nonatomic) IBOutlet UILabel *nameLabel;
@end
讓我知道如果你需要任何額外的信息或代碼,我會很樂意提供。
你在代碼中設置nameLabel的值,因爲我在這裏看不到它。當你設置detailLabel的值時它也能工作嗎?檢查你是否已經正確地連接了你的IB連接 – AppHandwerker 2012-08-02 14:51:33
當你從tableView中出列它時,你必須將單元格轉換爲JSONFeedItemCell。 – 2012-08-02 15:10:38
Crud,我包含了detailLabel行而不是nameLabel行!謝謝你指出,我會改變它。我應該正確地連接到XIB集,儘管我不明白這會如何改變任何事情,因爲我的錯誤在編譯器中,據我所知,它不應該受XIB影響。 – Chance 2012-08-02 15:13:04