我正在开发 Mac 和 iOS 应用程序,并使用 iCloud CoreData 来同步数据。
当我从 iOS 应用程序更新某些内容时,并且在 Mac 应用程序运行时更新已迁移到 Mac 应用程序中的 PersistentStore。问题是我找不到有效的方法来强制 NSArrayController 从存储中重新加载所有数据。
尝试过 -(void) fetch:(id)sender;只能看到删除或添加的实体,但更新后的模型属性未刷新...
请帮忙。谢谢
最佳答案
如果您在托管对象上下文中看到最新数据,但在数组 Controller 中看不到,则您需要:
[_yourManagedObjectContext processPendingChanges];
[_yourArrayController fetchWithRequest:nil merge:YES error:&error];
[_yourArrayController rearrangeObjects];
我在 Mac/iOS iCloud 应用程序中使用此功能,以便在 iCloud 存储更改时更新 Mac 应用程序的数据。
关于macos - 如何强制 NSArrayController 重新加载 MOC 内容以反射(reflect)最新的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14049027/