Ich versuche, einige Bilder in Code mit addSubview zu legen, und sie werden nicht angezeigt.Subviews, die nicht in UIView-Klasse angezeigt werden
Ich erstellte eine Klasse (myUIView), die Unterklassen UIView, und änderte dann die Klasse der NIB-Datei in IB zu myUIView.
Dann gebe ich den folgenden Code ein, bekomme aber immer noch einen leeren grauen Bildschirm.
- (id)initWithFrame:(CGRect)frame {
if (self = [super initWithFrame:frame]) {
// Initialization code
[self setupSubviews];
}
return self;
}
- (void)setupSubviews
{
self.backgroundColor = [UIColor blackColor];
UIImageView *black = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"black.png"]];
black.center = self.center;
black.opaque = YES;
[self addSubview:black];
[black release];
}
Das hat funktioniert .... Irgendeine Idee warum? – Craig
Es ist einfach so, wie IB Sachen macht, ich weiß nicht warum. Eine möglicherweise bessere Alternative ist die Verwendung von - (void) watchFromNib, die aufgerufen wird, nachdem alle Objekte aus der Nib geladen wurden, so dass Sie auf IBOutlets zugreifen können und wissen, dass sie initialisiert wurden. – cobbal