UIButton缺省值是:图画-文字水平,所以我们并不需要调整。
1.写作-图画 水平显示,以前的文本,图片后再次
[btn setTitleEdgeInsets:UIEdgeInsetsMake(0, -imgArrow.size.width, 0, imgArrow.size.width)];
[btn setImageEdgeInsets:UIEdgeInsetsMake(0, btn.titleLabel.bounds.size.width, 0, -btn.titleLabel.bounds.size.width)];
uibutton默认是左图片,右文字。并且在设置edge insets之前,位置已经有了设定。所以设置title的edge insets。真实的作用是在原来的边距值基础上添加或降低某个间距。负值便是降低。以title为例。设置右边距添加图片宽度,就使得自己的右边界距离button的右边界多了图片的宽度,正好放下图片。此时。title lable变小了,而title lable的左边界还在原来的位置上,所以lable的左边界距离button的左边界降低图片的宽度,lable就和原来一样大了。并且左側起始位置和图片的左側起始位置同样了。(注意:这里不须要加入监听,改变文字之后,调用上面的代码即能够进行调整成功!)
2.文字-图片 垂直显示。文字在上,图片在下
3.文字-图片 垂直接显示,在图片,文字在线
版权声明:本文博主原创文章。博客,未经同意不得转载。