Ola,我正在尝试找到一种保存用户分数的方法,这样当它从后台关闭时它会保存他们的分数,当再次打开时它会再次显示该分数。顺便说一下,我保存的东西是一个点击计数器,所以当他们点击它时,必须添加到他们之前的分数上。
有什么建议吗?
最佳答案
保存:
int numberOfTaps = 42; // some number of taps
NSUserDefaults *standardUserDefaults = [NSUserDefaults standardUserDefaults];
[standardUserDefaults setValue:[NSNumber numberWithInt:numberOfTaps] forKey:@"numberOfTaps"];
检索:
NSUserDefaults *standardUserDefaults = [NSUserDefaults standardUserDefaults];
int savedTaps = [[standardUserDefaults objectForKey:@"numberOfTaps"] intValue];
更新以获取更多信息
只是为了让它变得非常简单:
将这些方法复制到您的 .m 中的某处
- (void) saveNumberOfTaps:(int)numberOfTaps {
[[NSUserDefaults standardUserDefaults] setValue:[NSNumber numberWithInt:numberOfTaps] forKey:@"numberOfTaps"];
NSLog(@"Saved numberOfTaps: %i", numberOfTaps);
}
- (int) getNumberOfTaps {
if ([[[NSUserDefaults standardUserDefaults] objectForKey:@"numberOfTaps"] intValue]) {
int numberOfTaps = [[[NSUserDefaults standardUserDefaults] objectForKey:@"numberOfTaps"] intValue];
NSLog(@"Getting numberOfTaps: %i", numberOfTaps);
return numberOfTaps;
}
else {
NSLog(@"No taps saved yet");
return 0;
}
}
然后每当你想使用这些值时,你可以使用下面的:
// Save Taps
[self saveNumberOfTaps:14];
// Get Taps
int taps = [self getNumberOfTaps];
NSLog(@"taps retrieved: %i", taps);
关于ios - 保存用户分数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22288910/