Я реализую UITableView. Я также использую CoreData. Это работает нормально, но когда я пытаюсь удалить строку, я получаю эту ошибку:
Ошибка подтверждения в - [UITableView _endCellAnimationsWithContext:]
Вот моя реализация:
func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCell.EditingStyle, forRowAt indexPath: IndexPath) {
if editingStyle == .delete{
guard let appDelegate =
UIApplication.shared.delegate as? AppDelegate else {
return
}
let managedContext =
appDelegate.persistentContainer.viewContext
let fetchRequest =
NSFetchRequest<NSManagedObject>(entityName: "Developers")
do {
let test = try managedContext.fetch(fetchRequest)
let objectToDelete = test[indexPath.row]
managedContext.delete(objectToDelete)
do{
try managedContext.save()
}catch{
print(error)
}
}catch{
print(error)
}
self.tableView.beginUpdates()
tableView.deleteRows(at: [indexPath], with: .none)
self.tableView.endUpdates()
}
}
Проблема в этой строке tableView.deleteRows(at: [indexPath], with: .none)
Но я не понимаю, почему. Большинство примеров, которые я нашел, реализуют те же 3 строки кода:
self.tableView.beginUpdates()
tableView.deleteRows(at: [indexPath], with: .none)
self.tableView.endUpdates()
Кто-нибудь из вас знает, что я делаю или как обойти эту ошибку?