[英]UIButton with title and image
更改标题和图像插图
也将控制从垂直更改为底部
您可以在您喜欢的位置制作一个单独的UIImage和UILabel,并用透明的UIButton覆盖它们。 这应该够了吧。
希望能帮助到你。
您可以继承UIButton并重新定义layoutSubviews方法。
您可以调整UIButton
的以下属性: var titleEdgeInsets: UIEdgeInsets
, var imageEdgeInsets: UIEdgeInsets
。
做到这一点的另一种方法是子类化UIControl
。 这是一个UIView
子类,旨在用于此类情况。 UIButton
是UIControl
的子类。 这样一来,您可以更好地控制布局,而无需UIButton
的内置行为。
您可以使用代码或使用xib
文件中的Interface Builder进行xib
。
class MyButton: UIControl {
var imageView: UIImageView
var label: UILabel
// adjust colors for changed states like highlighting, etc.
override var isHighlighted: Bool {
didSet {
if isHighlighted {
backgroundColor = UIColor.grey
} else {
backgroundColor = UIColor.white
}
}
}
override var isSelected: Bool { didSet { ... } }
override var isEnabled: Bool { didSet { ... } }
override init(frame: CGRect) {
super.init(frame: frame)
commonInit()
}
override init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
commonInit()
}
func commonInit() {
imageView = UIImageView(image: UIImage(...))
addSubView(imageView)
label = UILabel(frame: CGRect(...))
addSubView(label)
// TODO: add constraints for layout
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.