为什么前导滑动动作也被复制为尾随动作?
Why is the leading swipe action also duplicated as a trailing action?
我在我的 tableView 上实现了前导滑动操作 ('Delete'),出于某种我无法弄清楚的原因,它也显示为尾随滑动操作。请参阅下面的代码:
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...' 时,只会出现拖尾滑动动作。如果有人能告诉我我错过了什么,将不胜感激。谢谢。
因为这是启用滑动时的默认行为。如果您只想在左侧执行破坏性删除操作,您可以执行类似的操作来禁用尾部的滑动。
func tableView(_ tableView: UITableView, trailingSwipeActionsConfigurationForRowAt indexPath: IndexPath) -> UISwipeActionsConfiguration? {
return UISwipeActionsConfiguration(actions: [])
}
通过一组空的动作,由于有 0 组可能的动作,拖尾滑动将消失。
使用此代码防止trailingSwipeAction()
func tableView(_ tableView: UITableView, editingStyleForRowAt indexPath: IndexPath) -> UITableViewCell.EditingStyle
{
return .none
}
- 或
func tableView(_ tableView: UITableView, trailingSwipeActionsConfigurationForRowAt indexPath: IndexPath) -> UISwipeActionsConfiguration? {
return UISwipeActionsConfiguration(actions: [])
}
我在我的 tableView 上实现了前导滑动操作 ('Delete'),出于某种我无法弄清楚的原因,它也显示为尾随滑动操作。请参阅下面的代码:
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...' 时,只会出现拖尾滑动动作。如果有人能告诉我我错过了什么,将不胜感激。谢谢。
因为这是启用滑动时的默认行为。如果您只想在左侧执行破坏性删除操作,您可以执行类似的操作来禁用尾部的滑动。
func tableView(_ tableView: UITableView, trailingSwipeActionsConfigurationForRowAt indexPath: IndexPath) -> UISwipeActionsConfiguration? {
return UISwipeActionsConfiguration(actions: [])
}
通过一组空的动作,由于有 0 组可能的动作,拖尾滑动将消失。
使用此代码防止trailingSwipeAction()
func tableView(_ tableView: UITableView, editingStyleForRowAt indexPath: IndexPath) -> UITableViewCell.EditingStyle
{
return .none
}
- 或
func tableView(_ tableView: UITableView, trailingSwipeActionsConfigurationForRowAt indexPath: IndexPath) -> UISwipeActionsConfiguration? {
return UISwipeActionsConfiguration(actions: [])
}