Я получаю следующую ошибку при попытке удалить элемент TableView.Удаление ошибки UITableView Room
Нагрузочное приложение из-за неперехваченное исключением «NSInternalInconsistencyException», причина: «Invalid обновления: недопустимый количества строк в разделе 0. Число строк, содержащихся в существующей секции после обновления (4) должен быть равное числу строк , содержащихся в этом разделе перед обновлением (4), плюс или минус количество строк, вставленных или удаленных из этого раздела (0 вставлено, 1 удалено) и плюс или минус количество строк, перемещенных в или из этот раздел (0 перемещен, 0 перемещен). '
Я использую следующий код:
override func tableView(tableView: UITableView, commitEditingStyle editingStyle: UITableViewCellEditingStyle, forRowAtIndexPath indexPath: NSIndexPath) {
if editingStyle == .Delete {
let roomToDelete : House = self.frc.objectAtIndexPath(indexPath) as! House
moc.deleteObject(roomToDelete)
do {
try moc.save()
} catch {
print("Failed to save upon delete")
return
}
tableView.deleteRowsAtIndexPaths([indexPath], withRowAnimation: .Automatic)
self.tableView.reloadData()
}
}
Если я оставляю последние две строки кода с после этого я не получаю ошибку, но линия не удаляется, потому что я только удаление данные из Core Data. Если я покину стол и вернусь, линия исчезнет. Я предполагаю, что ошибка связана с тем, что я каким-то образом не связываю удаление строки с количеством строк в секции, поэтому существует несоответствие. Все поиски, которые я сделал, возвращаются с похожим программированием на то, что у меня есть.
Вы установили делегат для FRC и реализовали связанные методы? – pbasdf