Ios NSFetchedResultsController与更改的记录数冲突

Ios NSFetchedResultsController与更改的记录数冲突,ios,nsfetchedresultscontroller,Ios,Nsfetchedresultscontroller,我有一个带有ARC、故事板、支持ios5+的iPad应用程序 我有一个VC正在单独与NSFetchedResultsController合作。 VC有两个指向两个不同实体的表视图。 我有单记录添加、更改、删除和移动行在这个VC上运行良好 现在,我引入了一个新功能,使用户能够快速地将多行添加到这些表视图中。 为此,我提供了一个从这个VC到一个新VC(我们称之为quickAddVC)的segue(模式)。 用户在quickAddVC上输入数据,然后我返回(模式)到原始VC。 在(我相信)再次为VC设

我有一个带有ARC、故事板、支持ios5+的iPad应用程序

我有一个VC正在单独与NSFetchedResultsController合作。 VC有两个指向两个不同实体的表视图。 我有单记录添加、更改、删除和移动行在这个VC上运行良好

现在,我引入了一个新功能,使用户能够快速地将多行添加到这些表视图中。 为此,我提供了一个从这个VC到一个新VC(我们称之为quickAddVC)的segue(模式)。 用户在quickAddVC上输入数据,然后我返回(模式)到原始VC。 在(我相信)再次为VC设置NSFetchedResultsController之前(我在ViewDidUnload中将它们设置为nil),我保存了新记录(通过备用调用)

然而,我不断得到这个不匹配的错误。 不管我添加了多少条记录,它总是将从quickAddVC发生的插入数注册为1个插入,并且它还记得在我进行此比较之前NSFetchedResultsController中有多少条记录

错误:

*在-[UITableView\u endCellAnimationsWithContext:],/SourceCache/UIKit/UIKit-2372/UITableView.m:1070中的断言失败

didChangeObject失败,name=NSInternalInconsistencyException原因=无效更新:节0中的行数无效。更新(5)后现有节中包含的行数必须等于更新(2)前该节中包含的行数,加上或减去从该节中插入或删除的行数(1插入,0删除),加上或减去移入或移出该节的行数(0移入,0移出)

任何关于我做错了什么或应该尝试什么的想法都是有用的

我不知道如何让NSFetchedResultsController简单地忘记其原始状态并从头开始重新启动,我认为这可以为我解决这个问题


我还没有发布任何代码,我想如果需要的话我可以发布很多,但希望这里有足够的内容来概述设计问题并获得一些想法。

只需重新发布问题的答案,将问题标记为已结束


好了,问题解决了。基本上,我是在错误的位置清除NSFetchedResultsController。在赛格开始之前将它们设置为零,一切正常。我做了一个错误的假设,假设在我再次返回时调用了ViewDidLoad方法,也调用了ViewDidUnload方法,但事实并非如此

好了,问题解决了。基本上,我是在错误的位置清除NSFetchedResultsController。在赛格开始之前将它们设置为零,一切正常。我做了一个错误的假设,假设在我再次返回时调用了ViewDidLoad方法,也调用了ViewDidUnload方法,但事实并非如此。