3

我有这个问题NSUserDefaults。它会保存默认值,直到我在后台终止应用程序,然后当我返回时,所有默认值都消失了。每次在我的设备上构建新版本时,它们也会消失。但同样,只要我不在后台杀死它,它们就在应用程序中。它在 iOS 6 中运行良好。想法?

4

3 回答 3

0

将您的值放入字符串(或根据您的要求的任何其他值)并将字符串保存在用户默认值中

NSUserDefaults *userdefault=[NSUserDefaults standardUserDefaults];        
NSString *str=[NSString stringWithFormat:@"%@",[dicUser objectForKey:@"device_token"]];
[userdefault setObject:str forKey:@"YOURKEY"];
于 2016-01-01T08:43:40.513 回答
0

由于您没有您的代码,所以我给出的示例在 iOS 7 上非常适合我,试一试。希望也适合你。

用于保存布尔值

bool flag = YES;
[[NSUserDefaults standardUserDefaults] setBool:flag forKey:@"flag"];

用于检索布尔值

bool flag = [[NSUserDefaults standardUserDefaults] boolForKey:@"flag"];
于 2016-01-01T12:14:03.647 回答
-2

确保userDefaults在使用它之前已经声明了一些东西,如果你已经在你的AppDelegate文件中使用了它,那么这里是一个示例代码我如何保存值并且它工作正常所以试试这种方式

APP_DELEGATE.userDefaults = [NSUserDefaults standardUserDefaults];
[APP_DELEGATE.userDefaults setObject:@"unChecked" forKey:@"CheckMark"];
[APP_DELEGATE.userDefaults synchronize];

这里APP_DELEGATE在我的AppDelegate.h文件中是这样声明的

#define APP_DELEGATE ((AppDelegate*)[[UIApplication sharedApplication] delegate])

希望能帮助到你!

于 2013-10-03T04:18:31.453 回答