自定义按钮(图像在上面 文字在下面)

 
  
 1 @implementation ViewController
 2 
 3 - (void)viewDidLoad {
 4     [super viewDidLoad];
 5     // Do any additional setup after loading the view, typically from a nib.
 6     MYButton *btn = [MYButton buttonWithType:UIButtonTypeCustom];
 7     btn.backgroundColor = [UIColor redColor];
 8     [btn setImage:[UIImage imageNamed:@"57"] forState:UIControlStateNormal];
 9     [btn setTitle:@"会计电算教学" forState:UIControlStateNormal];
10     btn.frame = CGRectMake(100, 100, 87 , 80);
11     [self.view addSubview:btn];
12     
13 }
 
  

 

@implementation MYButton

- (instancetype)initWithFrame:(CGRect)frame
{
    if (self = [super initWithFrame:frame]) {
        [self setUp];
    }
    
    return self;
}

- (id)initWithCoder:(NSCoder *)aDecoder
{
    if (self = [super initWithCoder:aDecoder]) {
        [self setUp];
    }
    return self;
}

- (void)setUp
{
    [self setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
    self.titleLabel.font = [UIFont systemFontOfSize:14];
    self.titleLabel.textAlignment = NSTextAlignmentCenter;
    
}

- (void)layoutSubviews
{
    [super layoutSubviews];
    self.imageView.x = 15;
    self.imageView.y = 5;
    self.imageView.contentMode =UIViewContentModeScaleAspectFill;
    self.titleLabel.y =CGRectGetMaxY(self.imageView.frame ) +5;
    self.titleLabel.x = 0;
    self.titleLabel.width = self.width;
    
}

- (void)setTitle:(NSString *)title forState:(UIControlState)state
{
    [super setTitle:title forState:state];
    
    [self sizeToFit];
}

- (void)setImage:(UIImage *)image forState:(UIControlState)state
{
    [super setImage:image forState:state];
    
    [self sizeToFit];
}

@end

通过自定义按钮可以达到图像在上面  文字在下面  只要调整一下按钮的大小 就可以轻松的实现应用图片+应用名称的组合,非常方便做应用推荐的开发。

转载于:https://www.cnblogs.com/zzw-ios-learn/p/4477918.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值