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