我正试图为iPhone游戏保存一些内容,但我却陷入困境。
我正在保存数据;
[[NSUserDefaults standardUserDefaults] setInteger:careerScore forKey:@"career_score"];
//Tells the userDefaults to update the data base.
[[NSUserDefaults standardUserDefaults] synchronize];
调用正确的方法时。
我遇到的问题是在首次打开游戏时加载变量。目前我有;
int careerScore = [[NSUserDefaults standardUserDefaults] IntegerForKey:@"career_score"];
问题似乎是它无法在游戏第一次加载时访问此NSUserDefault(因为它在调用正确的方法之前不存在),然后导致崩溃。
如果它存在的话,我是怎么想从那里获取整数的,但是如果它不存在则忽略它?或者是否有更简单/更好的方法来保存数据?我正在使用cocos2d。
答案 0 :(得分:1)
使用registerDefaults:
实例的NSUserDefaults
方法指定所有设置的默认值。
答案 1 :(得分:0)
对于integerForKey,小“i” 30 char。