iOS自定义UIButton
2016-04-14 本文已影响284人
西门吹雪123
很多时候我们写一个Button,为了调整他里面的图片和文字的位置,有时候挺头疼的。使用setImageEdgeInsets和setTitleEdgeInsets 调整位置,这个方法也确实可行,但是调起来非常的麻烦,例如
[allButton setImageEdgeInsets:UIEdgeInsetsMake(10,0,0,0)];
[allButton setTitleEdgeInsets:UIEdgeInsetsMake(0,5,0,0)];
PS:参数值为对应Top,left,bottom,right,这个值是以你设置button内容的位置来调整,默认是button中心点作为原点点,相对中心点来计算坐标位置,比如上面的例子:图片相对中心点往下移动十个像素点;文字相对中心点往右边移动5个像素点。
以下是设置内容的两个属性
水平位置:contentHorizontalAlignment ,垂直位置:contentVerticalAlignment
现在自定义button内部内容的位置,只需要重写一个方法即可:
以上代码实现的功能是把图片和文字在button垂直居中,图片在上,文字在下。
好了,知道重写button的方法,再也不需要调整蛋疼的EdgeInsets值。