【发布时间】:2014-04-30 04:38:48
【问题描述】:
在我的 AppDelegate.m 中,如果用户尚未进入设置窗格,我将尝试从我的 Preference Bundle 中初始化默认值。初始化运行,我看到了符合我偏好的正确数量的对象,但它们都是 null 并且没有设置任何内容。
+ (void)initialize {
NSLog(@"Running settings initialization");
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSString *settingsBundle =
[[NSBundle mainBundle] pathForResource:@"Settings" ofType:@"bundle"];
NSDictionary *settings =
[NSDictionary dictionaryWithContentsOfFile:
[settingsBundle stringByAppendingPathComponent:@"Root.plist"]];
NSArray *preferences = [settings objectForKey:@"PreferenceSpecifiers"];
NSMutableDictionary *defaultsToRegister =
[[NSMutableDictionary alloc] initWithCapacity:[preferences count]];
[defaults registerDefaults:defaultsToRegister];
[defaults synchronize];
}
【问题讨论】:
-
您没有在
defaultsToRegister字典中添加任何内容。您只需创建一个空字典。
标签: ios nsuserdefaults