NSUserDefaults用于保存信息

时间:2011-09-04 18:24:51

标签: iphone objective-c

我希望我的应用程序能够保存id,名称和其他内容等数据,并且我希望使用NSUserDefaults,问题是我想确定一些数据是默认的,直到用户决定更改它们为止,例如,我希望ID号为1000,当用户更改值时,它将始终是新值。

2 个答案:

答案 0 :(得分:2)

像这样使用registerDefaults:

NSDictionary *userDefaultsDefaults = [NSDictionary dictionaryWithObjectsAndKeys:
                                      [NSNumber numberWithInt:1000], @"MyKey",
                                      nil];
[[NSUserDefaults standardUserDefaults] registerDefaults:userDefaultsDefaults];

NSInteger value = [[NSUserDefaults standardUserDefaults] integerForKey:@"MyKey"]; // will be 1000 until changed by saving to NSUserDefaults

编辑:请记住,每次启动应用时都必须运行此代码。这些默认值不会保存到磁盘。

答案 1 :(得分:1)

将设置包添加到应用程序时,您可以为.tlist文件中的每个选项指定默认值。因此,在用户更改之前,始终会有一个默认值。

以下是我的设置包中的.plist文件的代码段: enter image description here

在应用程序中,我只需按下设置:

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];

NSString *dataMode  = [defaults objectForKey: @"data"];