我已经实现了settings.bundle,以便在我的应用程序中有一个preferences视图,以便能够在应用程序中直接编辑内嵌设置值。
然而,现在我想从settings.bundle中阅读,但是读到了iOS编程指南,我发现在应用程序启动时应该读取settings.bundle。
那么,在我的代码中任何时候都不可能访问这个首选项吗?如果用户无法在应用程序运行期间随时更新首选项,则Inapp设置就没有任何意义。
Inappsettings提供了方法InAppSettings registerDefaults
- (void)initialize{
if([self class] == [AppDelegate class]){
[InAppSettings registerDefaults];
}
}但我不确定这是否可以随时阅读首选项。有什么建议吗?
编辑:在我的应用程序中,我有三个视图,一个是仪表板。另一个选项和邮件视图则以模式方式显示。
在首选项中,用户可以设置一些我需要发送消息的基本内容。因此,当用户刚刚开始键入并想要更改(例如传输网关)时,他打开选项视图,即inappsettings视图,并更改一些内容。我想在不重新启动应用程序的情况下阅读这些更改。
发布于 2011-04-07 21:04:00
显然,苹果希望将外部偏好UI模式强加给我们。请回忆一下Mail.app是如何工作的。如果您有不可变的首选项集,则不必考虑处理onPrefferenceChange、并发、同步、操作系统备份和复制问题等事件。然而,苹果公司提供的设施在他们所能做的事情上非常有限。您甚至不能在那里输入任意字符串(Mail.app显然为此使用了一些私有API )。因此,你必须做出选择,是使用苹果提供的东西,还是实现自己的偏好系统(可能是基于NSUSerDefaults或其他什么的)。我实现了我自己的一次,从那以后我就一直使用它。我更喜欢有一个真正的应用程序偏好系统。它的主要优点是能够在不离开应用程序的情况下改变其价值。
https://stackoverflow.com/questions/5569133
复制相似问题