单击后重绘自定义 UIButton
Redraw customized UIButton after click
我有一个自定义的 UIButton,我想在单击它后重新绘制它 -- 我想更改它的颜色。这是代码:
class DayButtons: UIButton {
var isPressed: Bool = false
var color = UIColor.whiteColor()
override func drawRect(rect: CGRect) {
let cornerR = CGFloat(5)
var path = UIBezierPath(roundedRect: rect, cornerRadius: cornerR)
color.setFill()
path.fill()
}
}
有没有办法在我的主线程中再次调用drawRect?
您应该在您的按钮上调用 setNeedsDisplay()
,它会依次为您调用 drawRect()
。
我有一个自定义的 UIButton,我想在单击它后重新绘制它 -- 我想更改它的颜色。这是代码:
class DayButtons: UIButton {
var isPressed: Bool = false
var color = UIColor.whiteColor()
override func drawRect(rect: CGRect) {
let cornerR = CGFloat(5)
var path = UIBezierPath(roundedRect: rect, cornerRadius: cornerR)
color.setFill()
path.fill()
}
}
有没有办法在我的主线程中再次调用drawRect?
您应该在您的按钮上调用 setNeedsDisplay()
,它会依次为您调用 drawRect()
。