Xcode高分问题

时间:2014-10-08 02:56:10

标签: ios objective-c

我在游戏中保存高分的问题。

例如,在第一场比赛之后,我以高分为零开始,高分成为分数。然而,在随后的比赛之后,高分并不总是在正确的时间被覆盖。那是为什么?

以下是代码:

- (void)viewDidLoad {
    [super viewDidLoad];
    //
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    NSString *myscore = [defaults objectForKey:@"savedstring"];
    _scoreMade.text = myscore;

    NSUserDefaults *defaults4 = [NSUserDefaults standardUserDefaults];
    NSString *highscore1 = [defaults4 objectForKey:@"highscore"];

    if(myscore > highscore1) {
        _highestScore.text = myscore;
       NSString *savestring33 = _scoreMade.text;
       NSUserDefaults *defaults4 = [NSUserDefaults standardUserDefaults];
       [defaults4 setObject:savestring33 forKey:@"highscore"];
       [defaults4 synchronize];
       NSLog (@"new score");
    }
    if(highscore1 > myscore){
        _highestScore.text = highscore1;
        NSLog (@"no new score");    
   }
}

1 个答案:

答案 0 :(得分:0)

此:

if(myscore > highscore1) {

应该是:

if([myscore intValue] > [highscore1 intValue]) {

而且:

if(highscore1 > myscore) {

应该是:

if([highscore1 intValue] > [myscore intValue]) {