我为我的UITableViewCell实现了iOS 11 trailingSwipeActionsConfigurationForRowAt
和leadingSwipeActionsConfigurationForRowAt
。我正在使用trailingSwipeActionsConfigurationForRowAt
来禁用该行,而使用leadingSwipeActionsConfigurationForRowAt
来撤消该行的禁用。我尝试使用canEditRowAt
,但这会禁用整行的编辑。有没有办法只禁用其中一个滑动操作而不是禁用整行编辑?
如果我已经刷过撤消,我想禁用撤消滑动操作,但是启用取消滑动操作。如果我已经滑动取消,我还想禁用取消滑动操作,但是启用撤消滑动操作。
答案 0 :(得分:6)
尝试在trailingSwipeActionsConfigurationForRowAt
方法中返回空的操作数组以禁用单向操作。
func tableView(_ tableView: UITableView, trailingSwipeActionsConfigurationForRowAt indexPath: IndexPath) -> UISwipeActionsConfiguration? {
let swipeAction = UISwipeActionsConfiguration(actions: [])
return swipeAction
}
答案 1 :(得分:0)
返回 nil 足以防止滑动操作。
func tableView(_ tableView: UITableView, trailingSwipeActionsConfigurationForRowAt indexPath: IndexPath) -> UISwipeActionsConfiguration? {
return nil
}