Iphone NSFetchedResultsController委托方法在mergeChangesFromContextDidSaveNotification后未激发

Iphone NSFetchedResultsController委托方法在mergeChangesFromContextDidSaveNotification后未激发,iphone,core-data,nsfetchedresultscontroller,Iphone,Core Data,Nsfetchedresultscontroller,我一直在浏览类似于这篇文章的帖子,但没有一篇能回答我的问题 与CoreDataBooks一样,我使用单独的MOC添加和编辑项目,并遵守适当的通知,如: - (void)addControllerContextDidSave:(NSNotification*)saveNotification { NSManagedObjectContext *context = [self.fetchedResultsController managedObjectContext]; // Mergin

我一直在浏览类似于这篇文章的帖子,但没有一篇能回答我的问题

与CoreDataBooks一样,我使用单独的MOC添加和编辑项目,并遵守适当的通知,如:

- (void)addControllerContextDidSave:(NSNotification*)saveNotification {

  NSManagedObjectContext *context = [self.fetchedResultsController managedObjectContext];
  // Merging changes causes the fetched results controller to update its results
  [context mergeChangesFromContextDidSaveNotification:saveNotification];
  NSLog(@"merging changes in rootview");
}
当我进行保存时,它被正确地观察到。调试通知将显示正确的上下文,调试上下文将显示刚刚添加的项。日志消息也可以正常打印。但什么也没发生。NSFetchedResultsController的任何委托方法都不会触发,表视图也不会更新

我没有尝试缓存或清除它。我尝试过在tableView上重新加载数据,但是没有。 当我退出应用程序并重新启动时,它显示良好

更新: 通知确实包含正确的上下文作为其
对象
,该对象包含正确的项,但
userInfo
散列中没有任何内容:

userInfo = {
  inserted = "{(\n)}";
  updated = "{(\n)}";
}

因此,尽管已更改项具有正确的上下文,但通知中似乎没有任何更改。。。。嗯。

最愚蠢的错误奖颁给了。。。克里斯托夫

通知没有显示任何内容的原因是,我忘记在调用设置通知的代表并再次保存之前,在单独的MOC上进行保存

由于MOC刚刚保存,第二次保存没有任何更改,因此通知保持为空。正如我早就应该做的那样,删除第一次保存确实解决了问题