我使用NSUserDefaults来存储我的应用程序设置/配置。
负责保存默认值的代码如下:
NSUserDefaults * standardUserDefaults = [NSUserDefaults standardUserDefaults];
// saving settings
[standardUserDefaults setObject:address.text forKey:@"URL"];
[standardUserDefaults setObject:username.text forKey:@"username"];
[standardUserDefaults setObject:password.text forKey:@"password"];
// synchronize the settings
[standardUserDefaults synchronize];
确实,设置似乎被保存了。我从library/Preferences打开plist文件,看到值被保存了。我看到那些在我的方法完成工作后,[甚至在]关闭应用程序后。
我的问题:每当我再次启动我的应用程序时,保存的值从plist文件中消失了[键仍然存在],我显然无法加载我的首选项。
请建议。
可以用来保存设置:
NSMutableDictionary *dictSetting = [[NSMutableDictionary alloc] init];
[dictSetting setValue:address.text forKey:@"URL"];
[dictSetting setValue:username.text forKey:@"username"];
[dictSetting setValue:password.text forKey:@"password"];
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:dictSetting forKey:@"SETTINGS"];
[defaults synchronize];
检索设置:
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSDictionary *dictSettingData = [defaults objectForKey:@"SETTINGS"];
NSString *url = [dictSettingData valueForKey:@"URL"];
NSString *username = [dictSettingData valueForKey:@"username"];
NSString *password = [dictSettingData valueForKey:@"password"];