#import <UIKit/UIKit.h>
@interface BKButton : UIButton
@end
#import "BKButton.h"
@implementation BKButton
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
// 文字颜色
[self setTitleColor:WTColorFromRGB(0x333333) forState:UIControlStateNormal];
[self setTitleColor:WTColorFromRGB(0xff8b3f) forState:UIControlStateSelected];
// 字体
self.titleLabel.font = [UIFont systemFontOfSize:14];
// 高亮的时候不需要调整内部的图片为灰色
self.adjustsImageWhenHighlighted = NO;
}
return self;
}
/**
* 设置内部图标的frame
*/
- (CGRect)imageRectForContentRect:(CGRect)contentRect
{
CGFloat imageY = 15;
CGFloat imageW = 15;
CGFloat imageH = 15;
CGFloat imageX = WIDTH/2+100;
return CGRectMake(imageX, imageY, imageW, imageH);
}
/**
* 设置内部文字的frame
*/
- (CGRect)titleRectForContentRect:(CGRect)contentRect
{
CGFloat titleY = 0;
CGFloat titleX = WIDTH/2-100;
CGFloat titleH = 44;
CGFloat titleW = 150;
return CGRectMake(titleX, titleY, titleW, titleH);
}
@end
这样继承于UIButton,在Button内部进行重写方法,使之更容易使用