我对 a 进行了子类UIButton
化,并且我想提供newButton
相同背景图像的所有实例,等等。我以为我找到了正确的 init 方法initWithCoder
,但它只是被第一个调用newButton
。我通过将文本大小更改为巨大的东西做了一个小测试,并且只newButton
更改了第一个 s 文本大小。
我可以使用drawRect:
,而且效果很好。但有人告诉我这不是一个好方法。
有谁知道会调用哪个方法,以便我可以进行一些调整?
@implementation LCHButton
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
[self setDefaults];
}
return self;
}
-(id)init
{
self = [super init];
if (self) {
[self setDefaults];
}
return self;
}
-(id)initWithCoder:(NSCoder *)aDecoder
{
self = [super initWithCoder:aDecoder];
if (self) {
[self setDefaults];
}
return self;
}
-(void)setDefaults
{
[self setBackgroundImage:[[UIImage imageNamed:@"submitBtn.png"] stretchableImageWithLeftCapWidth:5 topCapHeight:0] forState:UIControlStateNormal];
self.titleLabel.font = [UIFont fontWithName:@"Museo-500" size:17];
}
@end
这只会更改第一个按钮