我希望自定义按钮由绿色背景,白色文字和无边框组成。我创建了继承自UIButton的类ThemedButton。然后我在awakeFromNib方法中更改按钮属性。
由于某些原因,更改背景和标题颜色可以正常工作,但操纵边框属性(甚至是圆角)则不然。我的按钮有绿色背景,白色文字,还有丑陋的蓝色边框。
我的实施如下。
编辑:抱歉我的混乱属性。我也尝试将边框颜色设置为与背景相同,以此方式摆脱它。import UIKit
class ThemedButton: UIButton {
override func awakeFromNib() {
super.awakeFromNib()
// Works
setTitleColor(UIColor.white, for: .normal)
layer.backgroundColor = GREEN_COLOR.cgColor
// Does not work
layer.borderWidth = 0
layer.borderColor = GREEN_COLOR.cgColor
layer.cornerRadius = 5
}
}
答案 0 :(得分:2)
设置边框的宽度
layer.borderWidth = 5
这有效
class ThemedButto22n: UIButton {
override func awakeFromNib() {
super.awakeFromNib()
}
override func layoutSubviews() {
super.layoutSubviews()
// Works
setTitleColor(UIColor.white, for: .normal)
layer.backgroundColor = UIColor.green.cgColor
// Does not work
layer.borderWidth = 5
layer.borderColor = UIColor.red.cgColor
layer.cornerRadius = 5
}
}