核心数据:添加新日期后,如何刷新数据显示

时间:2013-05-23 22:15:38

标签: ios core-data

有3个ViewController: enter image description here

managedObjectContext rootViewController引用managedObjectContext中的AppDelegate; managedObjectContext的{​​{1}}和displayViewController的{​​{1}}引用了managedObjectContext的{​​{1}}。

manageDataViewController在某些控件中显示一些数据。

现在,添加新数据后,managedObjectContext没有更改,除非重新启动应用程序。

这是为什么?

1 个答案:

答案 0 :(得分:0)

如果您希望视图自动更新,则有两个选项。简单的方法是将一个观察者添加到您的托管对象上下文中,如下所示:

[[NSNotificationCenter defaultCenter] addObserver:self
                                  selector:@selector(<#Selector name#>)
                                  name: NSManagedObjectContextObjectsDidChangeNotification
                                  object:<#A managed object context#>];

然后,只要托管对象上下文发生更改,您就会收到回调。由您来筛选出相关的更改。

您也可以使用NSFetchedResultsController,但它们实际上是针对UITableViews而不是其他。