如此简单的代码 - 按下按钮时,将背景图像更改为其他内容。
func betMaxButtonPressed (button: UIButton) {
print("bet max button pressed")
self.betMaxButton.setBackgroundImage(UIImage(named: "betMaxHighlighted"), forState: UIControlState.Highlighted)
}
在另一个函数(设置containerView)中调用此函数,该函数又在viewDidLoad中调用。
它可以工作但不是第一次按下,后续的印刷机。如果我添加代码
self.betMaxButton.setBackgroundImage(UIImage(named: "betMaxHighlighted"), forState: UIControlState.Highlighted)
to viewDidLoad然后一切都很好并在第一次点击时触发。只是想弄清楚为什么会这样。
答案 0 :(得分:0)
试试这个,
func betMaxButtonPressed (button: UIButton) {
print("bet max button pressed")
self.betMaxButton.setBackgroundImage(UIImage(named: "betMaxHighlighted"), forState: UIControlState.Normal)
}
注意:如果你想要不亮,那么你需要更改按钮bg(普通图像)
答案 1 :(得分:0)
每次按时,您都不想更改图像,为UIControlState
设置图像是在该按钮之后。所以你想做的是viewDidLoad
:
self.betMaxButton.setBackgroundImage(UIImage(named: "betMaxNormal"), forState: UIControlState.Normal)
self.betMaxButton.setBackgroundImage(UIImage(named: "betMaxHighlighted"), forState: UIControlState.Highlighted)
这将设置应显示哪个状态的图像。因此,当按下按钮时,它将自动更改图像。无需在插座方式中设置图像。