我的视图控制器需要跟踪 UISwipeAction 当前是否处于活动状态,因为在滑动操作期间不应允许编辑。为了实现这一点,我使用了一个标志,该标志在唯一的 UIContextualAction 中设置回默认值,这会删除该行。这工作正常:
override func tableView(_ tableView: UITableView, trailingSwipeActionsConfigurationForRowAt indexPath: IndexPath) -> UISwipeActionsConfiguration? {
isTrailingSwipeActionActive = true
let removeAction = UIContextualAction(style: .destructive, title: nil) { (action, iconView, completionHandler) in
self.isTrailingSwipeActionActive = false
completionHandler(true)
}
}
但是,当在显示上下文操作时再次点击该行取消滑动操作时(单元格动画回到正常状态),显然不会触发删除操作并且我的标志也没有设置回来。
有没有办法在这样取消操作时收到通知?