我将UIButton
子类化,我希望为newButton
的所有实例提供相同的背景图像。我以为我在initWithCoder
中找到了正确的init方法,但只是为第一个newButton
调用了它。我通过将文本大小更改为大量文本进行了一些测试,并且只更改了第一个newButton
文本大小。
我可以使用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
这将仅更改第一个按钮