Uitableview 删除父表行时核心数据崩溃

Uitableview 删除父表行时核心数据崩溃,uitableview,core-data,nsmanagedobject,nsfetchedresultscontroller,Uitableview,Core Data,Nsmanagedobject,Nsfetchedresultscontroller,我正在使用ECSlidingViewController作为路径和FB样式的UI。两个UITableView,一个(细节)显示为主视图,另一个(主视图)显示为侧菜单。两者都由核心数据驱动 在侧菜单UITableView中删除父表行时,我遇到了一个硬崩溃,但只有在详细信息页面显示删除时父表行的子行时,才会发生硬崩溃。所有其他行按预期删除 删除该行由以下人员处理: - (void)tableView:(UITableView *)tableView commitEditingStyle:(UITab

我正在使用ECSlidingViewController作为路径和FB样式的UI。两个UITableView,一个(细节)显示为主视图,另一个(主视图)显示为侧菜单。两者都由核心数据驱动

在侧菜单UITableView中删除父表行时,我遇到了一个硬崩溃,但只有在详细信息页面显示删除时父表行的子行时,才会发生硬崩溃。所有其他行按预期删除

删除该行由以下人员处理:

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
    if (editingStyle == UITableViewCellEditingStyleDelete) {
        [self.managedObjectContext deleteObject:[self.fetchedResultsController objectAtIndexPath:indexPath]];
    }
}
我在日志中发现以下错误:

CoreData:错误:严重的应用程序错误。在核心数据更改处理期间捕获异常。这通常是NSManagedObjectContextObjectsIDChangeNotification的观察者中的错误。无效更新:节0中的行数无效。更新后现有节中包含的行数(0)必须等于更新前该节中包含的行数(3),加上或减去从该节中插入或删除的行数(0插入,1删除),加上或减去移入或移出该节的行数(0移入,0移出). 带userInfo(空)

删除规则
设置为无效(如果有帮助)

我猜核心数据正在从NSFetchedResultsController一次删除所有子项,然后UITableVIew会变得混乱吗


如何才能在不崩溃的情况下删除父项和子项NSManagedObjects?

在多次查看代码后,发现我嵌套了
[self.tableView beginUpdate]
[self.tableView endUpdates]
,它们不同步,我连续两次调用endUpdates


在开发这个应用程序时,我已经多次碰到这个问题。如果您遇到类似此检查的崩溃,并且您可能正在使用CS193P课程中的CoreDataTableViewController,请检查beging和end更新的使用情况

删除对象后,执行新的获取并重新加载数据。您也可以为此使用NSFetchResultsControllerDelegate。希望有帮助。如果没有崩溃,我无法删除对象。单项目删除工作正常。我不明白为什么它试图一次删除所有子项。