通常我们设置的按钮是图片在右边,文字在左。所以我们需要自定义按钮来实现我们一些需求. 主要就是控制一下layoutSubviews里面计算一下尺寸
1.继承UIButton. 然后重写这几个方法,
2.接着使用改类创建就对象就好
3.可以在init 中设置一些自己固定的属性
class CustomBtn: UIButton {
override init(frame: CGRect) {
super.init(frame: frame)
titleLabel?.font = UIFont.systemFont(ofSize: 12)
setTitleColor(UIColor.green, for: UIControlState.normal)
setImage(UIImage(named:"navigationbar_friendattention"), for: UIControlState.normal)
setImage(UIImage(named:"navigationbar_friendattention_highlighted"), for: UIControlState.highlighted)
sizeToFit()
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
override func layoutSubviews() {
super.layoutSubviews()
titleLabel?.frame.origin.x = 20
imageView?.frame.origin.x = 20 + titleLabel!.frame.size.width
}
}
扩展
代码留给你,喜欢和点赞留给我https://gitee.com/lanyingwei/codes/ebx5hj6q3d1vsop7zrmlt98