场景:共享/同步领域。具有多个视图的 iOS/Swift 应用程序。
为了在后台保持同步并为多个视图提供自动(实时)更新,我应该使用什么最佳实践设计模式?
查看额外任务应用程序 - 这是有道理的,但该应用程序实际上只有一个活动视图。如果我有多个视图怎么办?
我应该销毁数据更改的领域通知并为每个视图重建吗?
场景:共享/同步领域。具有多个视图的 iOS/Swift 应用程序。
为了在后台保持同步并为多个视图提供自动(实时)更新,我应该使用什么最佳实践设计模式?
查看额外任务应用程序 - 这是有道理的,但该应用程序实际上只有一个活动视图。如果我有多个视图怎么办?
我应该销毁数据更改的领域通知并为每个视图重建吗?
推荐的方式与单个视图控制器相同。为每个视图控制器获取一个 Results 对象,并将其直接用作数据源。您可以使用 Realm 的通知机制来观察 Results 对象。当影响结果的更改从后台线程提交时,将触发通知。结果对象已自动更新到最新状态,您应该做的只是更新 UI。
您可以使用观察者模式。此外,如果您将 CoreData 用于您的模型,那么获取更新/插入/删除回调并相应地更新您的视图也非常容易。
在此处获取有关 CoreData 的更多详细信息: https ://developer.apple.com/library/content/documentation/Cocoa/Conceptual/CoreData/index.html?utm_source= iosstash.io