更新相关NSManagedObject时更新UITableView

时间:2013-01-22 07:57:47

标签: ios core-data nsfetchedresultscontroller nsmanagedobjectcontext

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

  

实体1&gt; <实体2> ENTITY3

Entity1Entity2之间存在一对一关系,Entity2Entity3之间存在一对多关系。

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

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

1 个答案:

答案 0 :(得分:4)

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

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

关于要更新的​​实体。

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

NSFetchedResultsController pitfall

希望有所帮助。