Custom UITableViewCell gibt mir: diese Klasse ist nicht die key-value-coding-konform

Zunächst diese Diskussion haben mein problem nicht lösen.

Custom UITableViewCell Unterklasse: Diese Klasse ist nicht ein key-value-coding-konform

Setup:

Ich habe ein array von Person-Objekten in MainViewController.
Möchten Sie die Objekte in einem UITableView im AllContactsViewController.

Problem:

Alles funktioniert wie erwartet, wenn Sie die Standardeinstellung verwenden UITableViewCell.
Wenn ich mit meinem custom TableCell bekomme ich eine Fehlermeldung zu zeigen
das diese Klasse ist nicht die key-value-coding-konform.

Dieser Fehler tritt direkt, nachdem ich mit keinem meiner drei outlets im IB mit meinem TableCell Klasse.

Hinweis:

TableCell hat drei Eigenschaften: eine name & email label + imageView.

Hoffe, Sie können helfen.

TableCell.h

#import <UIKit/UIKit.h>

@interface TableCell : UITableViewCell

@property (weak, nonatomic) IBOutlet UILabel *nameLabel;
@property (weak, nonatomic) IBOutlet UILabel *emailLabel;
@property (weak, nonatomic) IBOutlet UIImageView *imageView;

@end

TableCell.m

#import "TableCell.h"

@implementation TableCell
@synthesize nameLabel, imageView, emailLabel;

AllContactsViewController.m

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

    TableCell *cell = (TableCell *)[tableView dequeueReusableCellWithIdentifier:cellIdent];

    if (cell == nil) {

        NSArray *array = [[NSBundle mainBundle]loadNibNamed:@"TableCell" owner:self options:nil];
        cell = [array objectAtIndex:0];
    }

    NSString *firstAndLastnameString =
    [NSString stringWithFormat:@"%@ %@",
     [(NewContact *)[self.allContactsArray objectAtIndex:[indexPath row]] firstName],
     [(NewContact *)[self.allContactsArray objectAtIndex:[indexPath row]] lastName]];

    cell.nameLabel.text = firstAndLastnameString;

    cell.emailLabel.text =
    [(NewContact *)[self.allContactsArray objectAtIndex:[indexPath row]] eMail];

    cell.imageView.image =
    [(NewContact *)[self.allContactsArray objectAtIndex:[indexPath row]] contactPicture];

    return cell;
}

UPDATE:

Vielleicht ein screenshot helfen, aus IB.

Custom UITableViewCell gibt mir: diese Klasse ist nicht die key-value-coding-konform

Hinzugefügt voll AllContactsViewController.h

#import <UIKit/UIKit.h>
#import "VCDelegate.h"
#import "TableCell.h"

@interface AllContactsViewController : UIViewController <UITableViewDataSource, UITableViewDelegate>

@property (weak, nonatomic) id <VCDelegate>delegate;

@property (weak, nonatomic) IBOutlet UITableView *allContactsTableView;

@property (strong, nonatomic) NSMutableArray *allContactsArray;

@property (assign) int currentArrayIndexNumber;

- (IBAction)closeBtnTapped:(id)sender;

@end
  • Keine Schlüssel-Wert-konform für welche Taste? Geben Sie die genaue Fehlermeldung. - Haben Sie überprüft, dass cell = [array objectAtIndex:0] tatsächlich gibt eine Instanz von Ihr TableCell Klasse?
  • Hängt von der outlet ich eine Verbindung in IB. Ich Verbinde die name label, stürzt die app, Verbinde ich die imageView stattdessen stürzt die app. Sieht aus wie ich habe ein Problem mit ALLEN Eigenschaften, die ich deklariert TableCell ich bin mir sicher, dass ich eine Instanz zurück TableCell sonst die Fehlermeldung muss eine andere sein, da der Fehler-Punkte an die Steckdosen habe ich in TableCell - Genaue Fehlermeldung: [<AllContactsViewController 0x7f62ad0> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key imageView.'
  • Die Fehlermeldung Punkte zu AllContactsViewController! Hinzufügen NSLog(@"class=%@", [cell class]); um Ihren code zu überprüfen.
  • Die Ausgabe der Konsole: 2012-08-16 14:12:57.553 Kontakte+[15330:c07] class=TableCell
  • Überprüfen Sie heraus diese Antwort stackoverflow.com/a/13300245/163936
InformationsquelleAutor | 2012-08-16
Schreibe einen Kommentar