2011-09-04 241 views
0

我想我的应用程序保存数据,如id,名称和其他的东西,我想用NSUserDefaults做到这一点,问题是,我想确定一些数据是默认的,直到用户决定改变他们,例如,我希望身份证号码将是1000,当用户更改该值时,它将始终是新值。NSUserDefaults保存信息

+0

所以...你到目前为止尝试过什么?我们不会为你写代码。 –

回答

1

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

这里是我的设置包内的.plist文件的一个片段: enter image description here

在应用程序中,我只是拉设置像这样:

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 

NSString *dataMode = [defaults objectForKey: @"data"]; 
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 

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

+0

[以下是Apple的开发者文档中的描述。](http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/UserDefaults/Tasks/UsingDefaults.html) – SSteve