iOS自定义UIButton

很多时候我们写一个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值。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一个自定义的圆环,可转动,给每个按钮添加跳转或者事件,自己加了一些点击时播放系统的声音和振动,直接上代码,粘贴复制...
    迷恋代码阅读 641评论 0 3
  • UIButton内部文本和图片的布局是我们日常代码中,不可缺少的部分,按钮默认左边图片右边文本,那要实现左边文本,...
    Lsx_f阅读 1,103评论 1 2
  • 提笔想写封信给你 踌躇良久,却不知该用何种称呼。 怕亲昵,也怕客气。 那么,便免了吧。 算来,上次见面已是七年零九...
    白露未晞_于雅阅读 270评论 0 0
  • 犬校的确太缺少好的问题了; 关于公众号我思考了很久,也跟之前创业做的资讯赛道有关系; 问题是这样的: 提问:微信订...
    bluth阅读 432评论 0 1
  • 人,越能干,就越累, 越懂事,越没有人心疼, 越明事理的,就越没人把你当回事。 即便再坚强,付出再多, 也没人懂你...
    邓邓_2f27阅读 417评论 0 0