Ich habe eine sehr einfache Unterklasse von UIButton:
@interface MyButton : UIButton
@end
@implementation MyButton
- (id) initWithCoder:(NSCoder *)decoder
{
if (!(self = [super initWithCoder:decoder]))
return nil;
NSLog(@"-[%@ initWithCoder:%@]", self, decoder);
return self;
}
@end
Im Interface Builder füge ich einen UIButton hinzu, setze seinen Button-Typ auf Abgerundetes Rechteck und seine Klassenidentität auf MyButton
.
Bei der Ausführung erhalte ich das folgende Protokoll:
-[<MyButton: 0x5b23970; baseClass = UIButton; frame = (103 242; 114 37); opaque = NO; autoresize = RM+BM; layer = <CALayer: 0x5b23a90>> initWithCoder:<UINibDecoder: 0x6819200>]
aber die Schaltfläche ist keine runde rechteckige Schaltfläche mehr.
Beobachtet sowohl unter iOS 3.2 als auch unter iOS 4.
Ist dies ein Fehler oder übersehe ich etwas Offensichtliches?
Eine Instanz von MyButton programmatisch erstellen ist keine akzeptable Antwort, danke.