通过 NSUserDefault 从我的应用程序读取“设置”应用程序中设置的值需要什么?
我通过 Settings.bundle 设置了文本设置键。 设置应用程序很好地显示了该键的默认值。 但我无法使用此代码通过 NSUserDefaults
读取该值。
NSString *aaa = [[[NSUserDefaults standardUserDefaults] stringForKey:@"aaa"] copy];
值始终为零。我相信我省略了一些必需的步骤。需要什么?
I set a text setting key in by Settings.bundle.
The Settings app show the key's default value well.
But I can't read the value via NSUserDefaults
with this code.
NSString *aaa = [[[NSUserDefaults standardUserDefaults] stringForKey:@"aaa"] copy];
Value is always nil. I believe I omitted something required steps. What's required?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我得到了解决方案。
Settings.bundle
仅用于设置应用程序的配置,文件中指定的默认值仅适用于Settings
应用程序 UI。因此NSUserDefaults
不会自动读取它们。应用程序首次启动时,没有默认配置。所以你必须自己创建默认值。我不记得首次启动之前执行“设置”应用程序。我记得。但是,很明显,如果条目不存在,您必须通过代码提供默认值。
I got solution.
Settings.bundle
is just for configuration of Settings app, and the default values designated in the file is only forSettings
app UI. So theNSUserDefaults
does not read them automatically. At the first time of your app launch, there is no default configuration. So you have to create default values yourself.I don't remember about execution of Settings app before first launch. As I remember. However, it's obvious you have to offer default value via code if the entries are not exist.