1

一直在研究如何将数据从一个子视图发送到另一个子视图。该应用程序有几个视图,其中一个是实时设置视图。设置的更改应该会影响其他视图中的内容。

NSUserDefaults似乎很受欢迎,但我不希望持久数据也不希望自动保存到数据库/文件中。看起来可能会放缓,我想避免这种情况。

第二个流行的事情是将一些常见的顶级对象的引用传递给每个子视图。只是还没有找到任何教程,它会详细地告诉我如何做到这一点......很可能很简单,不需要教程 - 在你弄清楚一次之后!如果您能指出正确的方向(URL),将不胜感激!

问题:我正在考虑使用一个“单例对象”来存储“全局数据”,随时随地访问它。这有什么问题?如果我在例如 appDelegate.m 创建它,它应该在任何人尝试访问它之前就存在,对吧?

我正在查看示例代码。

4

2 回答 2

1

我建议使用代表和/或通知。

与其在应用程序委托中创建新的单例,不如在应用程序委托中添加必要的数据(或者更好的是,对数据的引用)并使视图具有对应用程序委托的引用。

您还可以设置通知,以便您的视图可以跟踪它们显示的数据的更改。

于 2009-11-19T11:27:00.430 回答
0

单例的美妙之处在于,当您第一次通过某些 [singletonClass sharedInstance] 访问它时,它会自动创建。因此,您无需在启动时“创建”它。如果是需要从任何视图访问的全局数据,单例可能是这样做的正确方法。

于 2009-11-19T11:24:29.467 回答