Я использую trailingSwipeActionsConfigurationForRowAt в моем табличном представлении и иногда замечал, что когда проводишь строку влево, чтобы показать действия, иногда возникает резкий или прерывистый ответ.Определенно не гладко.Иногда раскрытые действия даже исчезают и появляются снова.Я считаю, что мое определение функции довольно стандартно:
override func tableView(_ tableView: UITableView, trailingSwipeActionsConfigurationForRowAt indexPath: IndexPath) -> UISwipeActionsConfiguration? {
let modelObject = self.fetchedResultsController.object(at: indexPath)
let deleteAction = UIContextualAction(style: UIContextualAction.Style.normal, title: "Delete") { (action: UIContextualAction, sourceView: UIView, completionHandler: (Bool) -> Void) in
// set completion to remove displayed actions
completionHandler(true)
// delete object here
}
let editAction = UIContextualAction(style: UIContextualAction.Style.normal, title: "Edit") { (action: UIContextualAction, sourceView: UIView, completionHandler: (Bool) -> Void) in
// set completion to remove displayed actions
completionHandler(true)
// edit object here
}
deleteAction.backgroundColor = UIColor.red
editAction.backgroundColor = UIColor.gray
var actions = [UIContextualAction]()
actions = [deleteAction, editAction]
let swipeActions = UISwipeActionsConfiguration(actions: actions)
swipeActions.performsFirstActionWithFullSwipe = false
return swipeActions
}