2011-05-10 45 views
0

遵循NIB(動態選項)中的自定義單元格的文檔,我有這種方法。 (視圖本身不是一個UITableViewController,但它的正確掛接。)故障子類化UITableViewCell(2警告)

- (UITableViewCell *)tableView:(UITableView *)tableView 
     cellForRowAtIndexPath:(NSIndexPath *)indexPath { 
    static NSString *CellIdentifier = @"ReusableCell"; 

    UITableViewCell *cell = (LoadGameCell *) 
        [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 

    if (cell == nil) { 
     cell = [[NSBundle mainBundle] 
        loadNibNamed:@"LoadGameCell" owner:self options:nil]; 
     cell = loadGameCell; 
     self.loadGameCell = nil; 
    } 

    /* 
    cell setup 
    */ 

    return cell; 
} 

if語句中的第一行是我遇到的麻煩位。

Incompatible pointer types assigning to 'UITableViewCell *' from 'NSArray *' 

Incompatible Objective-C types assigning 'struct NSArray *', 
           expected 'struct UITableViewCell *' 

沒有錯誤/崩潰與這些警告運行應用程序,但我寧願不忽略/壓制它們。它會在以後更多的傷害。

如果它不是上述警告的直接結果,還有另一個問題。我無法獲得觀看的方法,只有標籤。 (也就是說,我可以自定義一個標籤,但不是它旁邊坐着的圖像視圖。)

回答

0

正如文檔將告訴你的,loadNibNamed:owner:options:返回一個數組。要訪問NIB中的單元格(假定它是NIB中唯一的根級對象),請致電objectAtIndex:0loadNibNamed:owner:options的結果。

+0

對於這種簡單的bug,我毫無用處......它們很微妙,所以我完全想念它們。謝謝。 – Thromordyn 2011-05-10 14:12:08