根据我的理解,NSFetchedResultsController负责将数据从托管对象上下文同步到表视图控制器。代表在这里扮演什么角色?我阅读了苹果文档并且没有得到它。请简明扼要地阐述这个问题。
答案 0 :(得分:0)
嗯,简单的回答是委托方法允许您在NSFetchedResultsController(NSFRC)中对托管对象执行操作时适当地更新表视图。
例如,如果删除NSFRC结果中的对象,则可以通过删除相应的行来更新表。
因此...
在controllerWillChangeContent:
中,最好告诉您的表格视图您要更改它(因此您应该在其上调用beginUpdates:
)
controller:didChangeObject:atIndexPath:forChangeType
。根据需要更新表格视图(例如,如果删除了托管对象,则通过调用deleteRowsAtIndexPaths:withRowAnimation:
)
controller:didChangeSection:atIndex:forChangeType
与上述类似,但适用于表格视图部分。
controllerDidChangeContent
。完成此方法也可以在表格视图
endUpdates:
希望这有所帮助。