【发布时间】:2010-12-05 11:37:13
【问题描述】:
在我的 viewWillLoad: 方法中,我目前正在执行以下操作:
- (void)viewWillAppear:(BOOL)animated {
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
if ( [defaults boolForKey:@"enabled_preference"] ) {
...
} else {
...
}
[super viewWillAppear:animated];
}
如果我在打开首选项窗格(使用普通 Settings.bundle 构建)之前构建并运行应用程序,那么 bool 似乎是 NO (或者更可能 nil) 而不是默认的 YES。但是,如果我在打开应用程序之前打开设置应用程序并查看应用程序首选项窗格,一切都会按预期工作。
我假设应用程序首选项没有初始化,我应该将它们初始化为应用程序委托中的默认值(如果尚未设置)。有人可以证实这一点吗?还是我在这里遗漏了其他明显的东西?
【问题讨论】:
标签: iphone objective-c settings preferences nsuserdefaults