2012-03-24 20 views
5
- (UITableViewCell *) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    static NSString *TodoListTableIdentifier = @"TodoListTableIdentifier"; 
    TodoTableViewCellController *cell = (TodoTableViewCellController *)[tableView dequeueReusableCellWithIdentifier:TodoListTableIdentifier]; 
    if (cell == nil) 
    { 
     NSArray *nib=[[NSBundle mainBundle] loadNibNamed:@"TodoTableViewCellController" owner:self options:nil]; 
     cell=[nib objectAtIndex:0]; 
     [cell setSelectionStyle:UITableViewCellSelectionStyleGray]; 
    } 
    Todo *todo = [self.allTodoArray objectAtIndex:[indexPath row]]; 


    cell.titleLabel.text = todo.fileTitle; 
    cell.money.text = [NSString stringWithFormat:@"Monei:%f",todo.amount]; 
    cell.name.text = todo.realName; 
    cell.date.text = todo.operateTime; 

    return cell; 
} 

durante l'esecuzione:personalizzato UITableViewCell NSUnknownKeyException

NSArray *nib=[[NSBundle mainBundle] loadNibNamed:@"TodoTableViewCellController" owner:self options:nil]; 

e non v'è un'eccezione: * terminazione app a causa di eccezione non identificata 'NSUnknownKeyException', la ragione: '[setValue: forUndefinedKey:]: questo la classe non è un codice chiave conforme alla codifica per la data chiave. '

Non so perché è successo, quindi per favore aiutatemi con questo, grazie in anticipo!

+0

possibile duplicato di [questa classe non è la chiave di codifica del codice di conformità per la chiave] (http://stackoverflow.com/questions/3088059/this-class-is-not-key-value-coding-compliant -per-the-key) – jtbandes

risposta

15

L'errore indica che è stato collegato qualcosa a una presa chiamata data nel pennino ma quella presa non esiste. Dove dichiari la data?

+0

data è un'etichetta della cella personalizzata e la dichiaro in TodoTableViewCellController.h – jxdwinter

+0

è data o data? – borrrden

+0

domanda successiva, dove si chiama loadNibNamed? – borrrden

2

Collegare tutte le prese in TododTableViewController XIB (in particolare la presa di visualizzazione), quindi eseguire di nuovo.

1
  1. Impostare Custom Class del proprietario del file su UITableViewCell.
  2. Impostare Custom Class della cella nella classe di celle di visualizzazione tabella personalizzata myCustomCell.
  3. Prendi il tuo UIlabel in myCustomCell.h.
+0

Grazie, questo commento mi ha salvato! – Joshua

Problemi correlati