我正在使用M13Checkbox,您可以查看Github页面here。在我的表格视图功能中,我为每个单元格的复选框变量分配了一个M13复选框。变量在我的自定义单元格类中看起来像var checkbox = M13Checkbox()
。
这就是我在表视图中定义复选框的代码:
cell.checkbox = M13Checkbox(frame: CGRect(x: 15.0, y: (cell.center.y)-22.0, width: 20.0, height:20.0))
view.addSubview(cell.checkbox)
我的问题是当用户按下复选框时如何进行操作?单击复选框时,我想要另一个视图或弹出窗口。这可能与我设置的方式有关吗?我需要添加什么代码?
答案 0 :(得分:2)
M13Checkbox派生自UIControl,因此您可以使用addTarget函数为事件添加处理程序。
cell.checkBox.tag = indexPath.row
cell.checkBox.addTarget(self, action: #selector(YourClassName.onValueChanged(_:)), forControlEvents: UIControlEvents.ValueChanged)
...
func onValueChanged(sender : AnyObject?)
{
if let checkBox = sender?.view as? M13Checkbox
{
let row = checkBox.tag
}
}