我在buttons
工作了2 tableview cell
我在sender
采取了行动,但我需要在每次点击时更改按钮图片,例如:
载入时:
button1image = user.png
button2image = empty.png
如果用户点击button 1
:
button1image = empty.png
button2image = user.png
如果用户点击button 2
:
button1image = user.png
button2image = empty.png
在我的tableviewcell
:
cell.button1.addTarget(self, action: #selector(ViewController.clickbutton1(_:)), forControlEvents: UIControlEvents.TouchUpInside)
cell.button2.addTarget(self, action: #selector(ViewController.clickbutton2(_:)), forControlEvents: UIControlEvents.TouchUpInside)
在ViewController
:
func clickbutton1(sender:UIButton) {
let buttonRow = sender.tag
}
func clickbutton2(sender:UIButton) {
let buttonRow = sender.tag
}
此外,我可以更改buttons
内部图像:
sender.setImage(UIImage(named:"empty.png"), forState:UIControlState.Normal)
我该怎么做?
答案 0 :(得分:1)
您可以尝试这样做,创建包含图像名称的2个字符串实例,并像cellForRowAtIndexPath
一样使用它。
var button1image = "user.png"
var button2image = "empty.png"
现在在cellForRowAtIndexPath
。
cell.button1.setImage(UIImage(named: button1image), forState: .Normal)
cell.button2.setImage(UIImage(named: button2image), forState: .Normal)
现在只需更改按钮操作中变量的值,然后重新加载tableView。
func clickbutton1(sender:UIButton) {
let buttonRow = sender.tag
button1image = "empty.png"
button2image = "user.png"
self.tableView.reloadData()
}
func clickbutton2(sender:UIButton) {
let buttonRow = sender.tag
button1image = user.png
button2image = empty.png
self.tableView.reloadData()
}
答案 1 :(得分:1)
创建自定义UITableViewCell,然后您就可以执行任何操作: https://stackoverflow.com/questions/33004189/swift-custom-cell-creating-your-own-cell-with-labelŠ