简短说明:
我正在使用 NSNotificationCenter 并制作一个观察者模式,这项工作,想象你有这个架构:
在管理 View 的 ViewController 中:
在 ViewDidLoad 中:
NSNotificationCenter.defaultCenter().addObserver(self, selector: "initData:", name: "dataReady", object: nil)
self.masterController.prepareData()
和
func initData(notif: NSNotification){
self.datas = self.masterController.getDatasReady()
}
(这是观察者模式)
但我不喜欢这种方式,因为我需要将我的数据从我的服务器存储在我的 DAO 中的“全局”中,因为我在后台获取数据并且大多数时候什么都不返回。
您是否有更好的方法来实现它? MVC + 在后台从服务器获取数据(我对后台任务使用 dispatch_async)。
感谢您的回答。
最佳答案
您可以尝试委托(delegate),但委托(delegate)用于将消息发送给代表发件人行事的单个已知收件人。因此,如果您只有一个通知客户端,您可以尝试使用它,否则 NSNotificationCenter
是不错的选择。
我还建议您查看有关 reactive programming 的内容也许会有帮助。
关于ios - 使用 swift 并在后台获取数据进行 MVC 的正确方法是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32591749/