我有一个子类UIButton
:
class ColorButton: UIButton {
override func awakeFromNib() {
self.layer.backgroundColor = UIColor.blackColor().CGColor
self.layer.cornerRadius = frame.size.width / 2
self.clipsToBounds = true
}
}
在界面构建器中,我将按钮设置为4个约束:width = 100, height = 100, centerX, centerY
。当我在模拟器上运行代码时,该按钮消失。但是,如果设置
self.layer.cornerRadius = 50
有用。我想不明白。如果有人了解这个问题,请告诉我。
在awakeFromNib
第一行中添加:
self.layoutIfNeeded()
代码:
class ColorButton: UIButton {
override func awakeFromNib() {
self.layoutIfNeeded()
self.layer.backgroundColor = UIColor.blackColor().CGColor
self.layer.cornerRadius = frame.size.width / 2
self.clipsToBounds = true
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句