【发布时间】:2015-12-17 19:45:58
【问题描述】:
我一直使用应用代理作为“全局存储桶”在各种视图控制器之间共享数据。通常我会这样做:
My_AppDelegate *appDelegate = (My_AppDelegate *)[[UIApplication sharedApplication] delegate];
然后,我会将数据粘贴到 appDelegate 中,并使用另一个视图控制器从 appDelegate 中获取数据。不知何故,这似乎很笨拙且不合适(尽管它确实有效)。
有没有更好的方法?我可以在某种全局共享区域上设置一个“监听器”吗?如果有人将一个数据元素插入其中,另一个对象会得到一个“回调”,让它知道有人已经准备好数据了吗?
在 Java 中,我们曾经使用 Observer/Observable 类来做到这一点 - 也许有类似的东西,或者在 iOS 中更好?
【问题讨论】:
标签: ios objective-c iphone cocoa-touch sharing