我正在尝试制作一个用户在最快的时间内完成任务的游戏,我希望显示用户的最佳时间,并在每次获得更好的时间时更新它。我有以下代码。如何确保BestTimeValue并不总是设置为零?
float starttime
float BestTimeValue
-(void)timer2{
starttime = 0.0f;
timer2 = [NSTimer scheduledTimerWithTimeInterval:1/1000.0f
target:self
selector:@selector(start)
userInfo:nil
repeats:YES]; }
-(void)start{
starttime += 0.001;
timelabel.text = [NSString stringWithFormat:@"%.3f", starttime];
}
- (void)viewDidLoad
{
BestTimeValue = [[NSUserDefaults standardUserDefaults] floatForKey:@"BestTimeSaved"];
BestTime.text = [NSString stringWithFormat:@"Best Time: %.3f", BestTimeValue]; }
游戏结束时:
[timer2 invalidate];
if (starttime < BestTimeValue) {
[[NSUserDefaults standardUserDefaults] setFloat:starttime forKey:@"BestTimeSaved"];
}
[[NSUserDefaults standardUserDefaults] synchronize];
}