有人可以帮我理解为什么这个bool没有保存?
以下是视图中我的代码加载:
[appDelegate.defaults setBool:YES forKey:@"testKey"];
[appDelegate.defaults synchronize];
NSLog (@"TEST BOOL VALUE = %@", [appDelegate.defaults boolForKey:@"testKey"] ? @"YES" : @"NO");
在app delegate applicationDidFinishLaunching中,我将appdelegate.defaults定义为:
self.defaults = [NSUserDefaults standardUserDefaults];
为什么这不起作用我真的不知道。
谢谢!
答案 0 :(得分:3)
appDelegate
为nil
。
尝试添加NSSlog
以检查:
NSLog(@"appDelegate: %@", appDelegate);
NSLog(@"appDelegate.defaults: %@", appDelegate.defaults);
[appDelegate.defaults setBool:YES forKey:@"testKey"];
// ...
答案 1 :(得分:2)
您应该使用:
[[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"testKey"];
或将defaults
属性设置为[NSUserDefaults standardUserDefaults]