如何观察托管对象上下文

时间:2009-09-06 14:27:34

标签: iphone notifications nsfetchedresultscontroller key-value-observing

每当我在应用程序的第一个选项卡中对对象进行更改时,更新会在选项卡2中自动更新,因为它使用fetchedResultsController。现在我有第三个选项卡也应该自行更新,但我该怎么做呢?

我在第三个标签中只有一个nsmangedObjectContext来获取相应的数据。每当此上下文中的对象发生更改时,我如何才能收到通知?

我还在讨论如何使我的数据获取更有效率的问题,因为选项卡2和3使用相同的数据集。我目前在标签3中进行另一次提取,以获得与标签2相同的数据。我不知道如何在不干扰fetchedresultscontroller的情况下使用tab2中的数据。

非常感谢有关此主题的信息!!

1 个答案:

答案 0 :(得分:0)

如果您的表格视图非常密切相关,那么您可以只有一个UITableViewDataSource为其提供数据,并让它管理NSFetchedResultsController。根据您的描述,这种情况似乎非常可能。

如果表格视图不是非常相似,那么只有一个UITableViewDataSource会产生过多的if()逻辑,然后将NSFetchedResultsController移到单独的模型对象中并发布{{1}当它收到委托回调时。然后,您的NSNotifications可以观看这些通知,以便在屏幕上自动更新。