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