我想要一些我可以在我的应用中随处访问的设置。有没有最好的方法来实现这个?现在我只是在我的app委托中粘贴属性,然后使用:
访问它们ClientAppDelegate *appDelegate = (ClientAppDelegate *)[[UIApplication sharedApplication] delegate];
settingValue = appDelegate.setting;
答案 0 :(得分:4)
如果它们是持久的,请使用NSUserDefaults。如果不是,请将它们包装在一个类中,并为需要它们的每个类指定一个指针。在每种情况下,您都应该可以更改与配置对象的连接,以便(1)依赖性变得明显(“aha,此代码的行为取决于配置”)和(2)您可以提供自定义配置对象用于测试目的。 MiškoHevery有很多关于单身,耦合和测试的文章。您可以从名为Singletons are Pathological Liars的帖子开始,然后从那里开始跟进,它会对您的设计有所帮助。
答案 1 :(得分:1)
使用NSUserDefaults
- 它们是存储应用程序设置的可靠,简单的方法,甚至可以在应用程序启动之间保持不变。