UITableView - 如何关闭行动作?

Ste*_*her 13 uitableview

我已经实施了tableView:editActionsForRowAtIndexPath:.为了响应其中的一些操作,我想将行动区域重新关闭.

似乎没有适当的方法UITableViewRowAction.我试过endEditing桌子和桌子; 我不确定下一步该尝试什么.

如何关闭动作区域?

小智 33

要关闭编辑操作,您可以设置tableViews编辑状态:

tableView.editing = NO 
Run Code Online (Sandbox Code Playgroud)

或者用动画设置它:

[tableView setEditing:NO animated:YES]
Run Code Online (Sandbox Code Playgroud)


Ibr*_*him 7

Swift 3的更新

我一直在寻找使用Swift 3做到这一点的方法,我终于找到了它:

tableView.isEditing = false
Run Code Online (Sandbox Code Playgroud)


小智 5

如果这样做self.tableView.setEditing(false, animated: true),用户将退出编辑模式。我认为你想要的是你想保持编辑模式但只是解除行操作。因此,您可以使用以下代码:

self.tableView.cellForRow(at: cellIndex)?.setEditing(false, animated: true) self.tableView.reloadData() // this is necessary, otherwise, it won't animate