我已经在我的 tableView 上实现了一个领先的滑动操作(“删除”),由于我无法弄清楚的原因,它也显示为尾随滑动操作。见下面的代码:

func tableView(_ tableView: UITableView, leadingSwipeActionsConfigurationForRowAt indexPath: IndexPath) ->
    UISwipeActionsConfiguration? {
    let delete1 = deleteAction(at: indexPath)
    return UISwipeActionsConfiguration(actions: [delete1])
}

func deleteAction(at indexPath: IndexPath) -> UIContextualAction {
    let action = UIContextualAction(style: .destructive, title: "Delete") { (action, view, completion) in
        self.delete(at: indexPath)
    }
    return action
}

我曾经有一个拖尾滑动操作,但我完全删除了这个功能。当我将 'leadingSwipeActionsConfigurationForRowAt' 更改为 'trailingSwipeActions...' 时,只会出现尾随滑动操作。如果有人能告诉我我错过了什么,不胜感激。谢谢。
swift - 为什么领先的滑动 Action 也被复制为尾随 Action ?-LMLPHP

swift - 为什么领先的滑动 Action 也被复制为尾随 Action ?-LMLPHP

最佳答案

使用此代码防止 trailingSwipeAction()

    func tableView(_ tableView: UITableView, editingStyleForRowAt indexPath: IndexPath) -> UITableViewCell.EditingStyle
    {
        return .none
    }
  •     func tableView(_ tableView: UITableView, trailingSwipeActionsConfigurationForRowAt indexPath: IndexPath) -> UISwipeActionsConfiguration? {
            return UISwipeActionsConfiguration(actions: [])
        }
    

    关于swift - 为什么领先的滑动 Action 也被复制为尾随 Action ?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57265186/

    10-13 09:26