UIButton按钮图片和文字的自动调整

1.文字在左,图片在右

button.titleLabel.backgroundColor = button.backgroundColor;  
button.imageView.backgroundColor = button.backgroundColor;  
//在使用一次titleLabel和imageView后才能正确获取titleSize      
CGSize titleSize = button.titleLabel.bounds.size;  
CGSize imageSize = button.imageView.bounds.size;  
CGFloat interval = 1.0;  
      
button.imageEdgeInsets = UIEdgeInsetsMake(0,titleSize.width + interval, 0, -(titleSize.width + interval));  
button.titleEdgeInsets = UIEdgeInsetsMake(0, -(imageSize.width + interval), 0, imageSize.width + interval); 

 

2. 图片在上,文字在下
button.titleLabel.backgroundColor = button.backgroundColor;  
button.imageView.backgroundColor = button.backgroundColor;  
  
CGSize titleSize = button.titleLabel.bounds.size;  
CGSize imageSize = button.imageView.bounds.size;  
CGFloat interval = 1.0;  
      
[button setImageEdgeInsets:UIEdgeInsetsMake(0,0, titleSize.height + interval, -(titleSize.width + interval))];  
[button setTitleEdgeInsets:UIEdgeInsetsMake(imageSize.height + interval, -(imageSize.width + interval), 0, 0)];  

 

 

posted @ 2016-06-08 10:39  Huster2009  阅读(1069)  评论(0编辑  收藏  举报