有谁知道如何将我的高分整数保存到NSUserDefaults以便我以后可以加载它?
答案 0 :(得分:58)
[[NSUserDefaults standardUserDefaults] setInteger:HighScore forKey:@"HighScore"];
......把它拿回来:
NSInteger highScore = [[NSUserDefaults standardUserDefaults] integerForKey:@"HighScore"];
documentation中非常简单地解释了这一点。
答案 1 :(得分:10)
更一般地说,您可以将Foundation类对象保存为用户默认值例如:
[[NSUserDefaults standardUserDefaults] setObject:[NSNumber numberWithInt:highScore] forKey:@"kHighScore"];
和
NSInteger highScore = [[[NSUserDefaults standardUserDefaults] objectForKey:@"kHighScore"] intValue];
但方便的方法是直接接收NSInteger
。
我更喜欢使用更不可知的-setObject:
和-objectForKey:
,因为它更清晰地将对象类型与对字典的访问分开。