2017-05-05 48 views
1

我有一个自定义表格视图单元格,左侧有一个切换按钮。ios - UITableView删除按钮不会对手势做出反应

当tableview的isEditing属性设置为true时,删除编辑选项会正确显示,但是当它被点击时,什么都不会发生。

enter image description here

陌生人的事情是,当我点击并按住,然后拖动到一边从按钮离开,然后抬起,小区终于滑过。这不是它应该如何工作的。

enter image description here

即使当我删除从故事板和子类中的切换按钮连接,它仍然表现这种方式。

它为什么这样做?

回答

1

首先,纠正我,如果我错了,但我认为这是两个不同的问题。

1.点击“删除编辑”按钮时没有任何反应。我会检查是否用IBAction正确连接到类文件的“删除编辑”按钮。

2.细胞的滑动行为不是所期望的。我会检查你正在识别的手势是否是分接头而不是左划卡

希望有所帮助。

+0

对不起,我应该已经更加清晰:圆形红色删除按钮,最左边是IOS系统图标删除出现在tableView的'isEditing'选项是'true',所以我很确定我不能直接控制它的IB连接。我的自定义按钮是右边那个圆形的粉红色按钮,用户可以点击该按钮将任务标记为已完成。 –

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) 
    ) 
    } 
} 
+0

谢谢 - 我应该提到我已经实施了这些方法。当单元格正确滑动时,显示“DELETE”按钮。只是圆形的红色( - )删除按钮没有选择手势。 –