***由于未捕获的异常'NSInternalInconsistencyException'而终止应用程序,原因:'索引0处的索引77处没有对象'

时间:2015-11-20 17:24:29

标签: objective-c core-data nspredicate nsfetchedresultscontroller nsmanagedobjectcontext

我收到以下错误

  

***因未捕获的异常'NSInternalInconsistencyException'而终止应用程序,原因:'索引77处没有对象   索引0'

的部分

这种情况正在发生,因为我正在使用带有NSFetchRequestController的tabbarcontrollers 2控制器,并在其根控制器中使用相同的Entity对象。所以两者都是活跃的,而不是一次一个。

现在在我的背景中,我将所有这些对象发送到服务器以获取一些信息并更新回来。

但是我开始得到上面突出显示的错误,因为一个控制器的索引路径由于其实现而与一个控制器不匹配,因此崩溃的应用程序有例外。

我通过下面的代码解决了这个问题,但这会减慢我的应用程序,是否有更可行的解决方案。

另请注意,我们将fetchresultcontroller对象设置为nil时未调用viewdidload,因为它们都是两个选项卡的根控制器。

PhoneNumber *phoneMO  = nil;
    if ([[self.fetchedResultsController sections] count] > [indexPath section]){
        id <NSFetchedResultsSectionInfo> sectionInfo = [[self.fetchedResultsController sections] objectAtIndex:[indexPath section]];
        if ([sectionInfo numberOfObjects] > [indexPath row]){
            phoneMO = [self.fetchedResultsController objectAtIndexPath:indexPath];
        }
    }

0 个答案:

没有答案