我使用 NSUserDefault 字典来存储基本信息,如高分等,这样当用户关闭应用程序数据不会丢失。无论如何,我使用:
NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
例如,如果我想存储一个新的高分,我会这样做:
[prefs setInteger:1023 forKey:@"highScore"];
[prefs synchronize]; //this is needed in case the app is closed.
之后,如果我想重新获得高分,我会这样做:
[prefs integerForKey:@"highScore"];
无论如何,关键是我存储了很多其他的东西,因为 NSUserDefaults enable
你存储 booleans
,integers
,objects
等。我必须执行什么方法来删除所有的键,使 NSUserDefault 成为像我第一次启动应用程序?
我在寻找这样的东西:
NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
[prefs deleteAllKeysAndObjectsInTheDictionary];
或者有一种方法可以得到所有的键,我必须循环遍历每个对象,但我不知道如何删除它们。
编辑:
我试过了:
NSUserDefaults *prefs = [NSUserDefaults standardUserDefaults];
[NSUserDefaults resetStandardUserDefaults];
[prefs synchronize];
我仍然能够取得高分。