我试图在没有 NSFetchedResultsController 或 NSArrayController 的情况下获取一些数据。问题在于,由于 AFIncrementalStore 的异步特性,我总是得到过时的数据(或者如果没有获取数据,则没有数据)数据。
有没有推荐的方法来处理这个问题?
我试图在没有 NSFetchedResultsController 或 NSArrayController 的情况下获取一些数据。问题在于,由于 AFIncrementalStore 的异步特性,我总是得到过时的数据(或者如果没有获取数据,则没有数据)数据。
有没有推荐的方法来处理这个问题?
您还可以尝试使用 AFIncrementalStore 通知来获取有关何时获取远程数据的通知,以便更新 UI 和您的对象。
AFIncrementalStoreContextDidFetchRemoteValues
ETC
我认为解决这个问题的首选方法是使用NSFetchedResultsControllers
(至少在 iOS 上)。如果您真的不想使用它,您可能需要订阅这些通知之一,具体取决于您希望收到的更改的粒度:
NSManagedObjectContextObjectsDidChangeNotification
NSManagedObjectContextDidSaveNotification
然后在发布这些通知之一时重新获取数据。