Реализация «swipe do clear» дает плохую анимацию при нажатии кнопки «Очистить».Ползание по левому краю дает нормальную анимацию.
func tableView(_ tableView: UITableView, trailingSwipeActionsConfigurationForRowAt indexPath: IndexPath) -> UISwipeActionsConfiguration? {
let clearAction = UIContextualAction(style: .destructive, title: "Clear") { (action, view, completion) in
self.items.remove(at: indexPath.row)
self.tableView.deleteRows(at: [indexPath], with: .none)
completion(true)
}
clearAction.backgroundColor = UIColor.clearGray
let swipeConfiguration = UISwipeActionsConfiguration(actions: [clearAction])
return swipeConfiguration
}
Это как если бы удаление начиналось во второй раз.Когда я опускаю self.tableView.deleteRows(at: [indexPath], with: .none)
, анимация идеальна, но затем происходит сбой табличного представления при добавлении или удалении строк позже (количество строк не совпадает с ситуацией до и после).
Slomo: