我有一个自定义表格视图单元格,左侧有一个切换按钮。
当tableview的isEditing属性设置为true时,删除编辑选项会正确显示,但是当它被点击时,没有任何反应。
更奇怪的是,当我轻拍并按住,然后向一侧拖离按钮,然后然后抬起,细胞最终滑过。这根本不是它应该如何运作的。
即使我从故事板和子类中删除了与切换按钮的连接,它仍然会以这种方式运行。
为什么这样做?
答案 0 :(得分:1)
首先,如果我错了,请纠正我,但我认为这是两个不同的问题。
1.点击“删除编辑”按钮时没有任何反应。我会检查“删除编辑”按钮是否通过IBAction正确连接到类文件。
2.细胞滑动行为不是所期望的。我会检查您识别的手势是点击而不是左侧滑动。
希望有所帮助。
答案 1 :(得分:1)
您需要在表视图控制器中添加以下方法
func tableView(_ tableView: UITableView, canEditRowAt indexPath: IndexPath) -> Bool {
return true
}
func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCellEditingStyle, forRowAt indexPath: IndexPath) {
if (editingStyle == UITableViewCellEditingStyle.delete) {
//remove element from your array providing index.row
tableView.deleteRowsAtIndexPaths([indexPath], withRowAnimation: .Fade)
)
}
}