0

我在核心数据实体(托管对象)之间具有以下关系层次结构:

实体 1 > 实体 2 > 实体 3

和之间存在一对一关系,Entity1Entity2之间存在一对多Entity2关系Entity3

我有一个显示Entity1记录列表的视图控制器,使用NSFetchedResultsController. UITableViewCell显示来自Entity1和的Entity2信息Entity3。现在,当添加/更新/删除对象NSFetchedResultsControllerDelegate时会自动调用方法Entity1,但是当添加/更新/删除相关Entity2Entity3记录时,不会调用委托方法。

在这种情况下,识别相关记录已更新并且也UITableViewCell需要更新的最佳或可能方法是什么?

4

1 回答 1

4

您需要弄脏其他实体的属性。换句话说,你应该打电话

[self willChangeValueForKey:@"someProperty"];
[self didChangeValueForKey:@"someProperty"];

在要更新的实体上。

这是一个示例解决方案,可以实现您想要实现的目标。

NSFetchedResultsController 陷阱

希望有帮助。

于 2013-01-22T08:37:48.263 回答