我有一个方法,当单击一个按钮(复选框)时会调用该方法,该方法应该改变按钮的背景图像。我有一个NSLog告诉我该方法被调用但图像永远不会改变。我无法弄清楚原因。
感谢您的帮助!
let checkedImage = UIImage(named: "checkedBox")
let uncheckedImage = UIImage(named: "uncheckedBox")
var isChecked:Bool = false
func checkboxClicked(sender: UIButton!) {
if sender == self {
if isChecked == true {
NSLog("Change background image - checked")
sender.setBackgroundImage(checkedImage, forState: .Normal)
isChecked == false
} else {
NSLog("Change background image - unchecked")
sender.setBackgroundImage(uncheckedImage, forState: .Normal)
isChecked == true
}
}
}
答案 0 :(得分:0)
您可以随时为不同的状态设置不同的图像。
let checkedImage = UIImage(named: "checkedBox")
let uncheckedImage = UIImage(named: "uncheckedBox")
checkbox.setBackgroundImage(checkedImage, forState: .Selected);
checkbox.setBackgroundImage(uncheckedImage, forState: .Normal);
var isChecked:Bool = false
func checkboxClicked(sender: UIButton!) {
if sender == self {
sender.selected = isChecked;
isChecked = !isChecked;
}
}
通过这种方式,您甚至可以设置图像以突出显示该图像,以便在单击复选框时添加一些闪光。