在TableViewCell Swift中切换(复选框)按钮

时间:2016-10-20 18:09:32

标签: ios iphone uitableview swift3 xcode8

我是iOS开发人员的新手,我一直试图通过点击单元格切换我的tableviewcell中的按钮/复选框。我的代码非常幼稚,切换到“检查”。图像工作正常,但问题是双击单元格时切换回未检查的图像。

我的代码中没有用的是什么?还有更好的方法吗? (也许是通过来自单元格的委托函数?)

代码示例非常有用!感谢。

var isChecked:Bool = true

在我的Tableview类的didSelectRowAtIndexPath函数中调用以下函数。

let btnCheckBox:UIButton = cell.contactCheckbox
setState(button: btnCheckBox)


func setState(button: UIButton){

    let check = UIImage(named: "check_green")
    let unCheck = UIImage(named: "un_check_green")

    if isChecked {
        button.setImage(check, for: .normal)
        isChecked = false
        print("First Tap - Bool is \(isChecked)")
    } else {
        button.setImage(unCheck, for: .normal)
        isChecked = true
        print("Double Tap - Bool is \(isChecked)")

    }
}

1 个答案:

答案 0 :(得分:0)

You should use UIButton , and set image for state of button, sample
check_green for selected
check_red for none
And each UITableviewcell must have an isSelected