Laden UIView von xib, Abstürze beim Zugriff auf IBOutlet

Habe ich eine xib-Datei mit einem kleinen UIView auf dem wiederum enthält einige Beschriftungen. Nun, ich bin versucht zu laden, die UIView in eine bestehende UIViewController, und ändern Sie die label-Texte. Der Grund, ich will es auf diese Weise, ist, dass die UIView wiederverwendet wird mit verschiedenen label-Texte, so dachte ich, machen eine benutzerdefinierte Klasse und laden Sie es von einem xib wäre der beste Weg zu gehen.

Ich habe versucht, mehrere Möglichkeiten zu laden und ich habe erfolgreich angezeigt, es auf meiner viewcontroller. Das problem ist, sobald ich versuche, tatsächlich eine Verknüpfung mit einem IBOutlet im Interface Builder, und darauf zugreifen, meine app abstürzt.

Habe ich eine benutzerdefinierte UIView Klasse, die wie folgt aussieht:

CoverPanel.h

@interface CoverPanel : UIView {

    IBOutlet UILabel *headline;

}

@property (nonatomic, retain) IBOutlet UILabel *headline;

@end

CoverPanel.m

@implementation CoverPanel

@synthesize headline;

- (id)initWithFrame:(CGRect)frame 
{
    self = [super initWithFrame:frame];
    if (self) 
    {
        //Initialization code.
        //
        self = [[[NSBundle mainBundle] loadNibNamed:@"CoverPanel" owner:self options:nil] objectAtIndex:0];
    }
    return self;
}

In der CoverPanel.xib ich verlinkt haben UILabel auf die Schlagzeile Steckdose.
In meiner viewcontroller, hier ist, wie erstelle ich das CoverPanel Instanz, und das ist, wo es kracht:

CoverPanel *panelView = [[CoverPanel alloc] initWithFrame:CGRectMake(0,0,300,100)];

So weit, So gut. Es zeigt die UIView genau so, wie Sie layed out in den .xib.
Aber sobald ich versuche es zu ändern die headline.text etwa so:

panelView.headline.text = @"Test";

stürzt es ab mit dieser Fehlermeldung:
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[UIView headline]: unrecognized selector geschickt Instanz 0x5c22b00'

Könnte es etwas winzig und ich bin mit Blick auf, aber es wurde driving me insane für Stunden und Stunden so weit. Hat jemand eine Idee?

InformationsquelleAutor indivisueel | 2011-05-18
Schreibe einen Kommentar