体会到了UILabel在使用autoLayout布局的简单方便后,也想使用UIBotton做类似效果,翻阅了一些资料,发现如果只是单纯的显示文字,可以新建继承于UIButton的子类,重写intrinsicContentSize,在layoutSubView中设置label的preferredMaxLayoutWidth可以解决问题,代码如下:
对于图片和文字都要显示的情况,可以在intrinsicContentSize中对label和image的intrinsicContentSize进行比较,选取最合适的高度返回
网友评论