2016-05-05 5 views
0

У меня две сцены GameScene и BonusScene Я использую NSUserDefaults, чтобы сохранить выигрышный счет, все работает отлично, я добавляю видео-награду, после просмотра видео вы получаете 5 очков, что тоже работает, но оценка обновление на экране происходит только тогда, когда вы переходите на другую сцену и возвращаетесь, но когда я использую NSLog(), я вижу, что это обновление происходит, но я не знаю, как это сделать в реальном времени на экране. Вот что я получил:Обновить оценку на экране после просмотра видеообъявления

losingCount=[scoreprefs integerForKey:@"losingCount"]; 
    SKLabelNode *winsCoutnt = [SKLabelNode labelNodeWithFontNamed:@"ROTORcap Extended Bold"]; 
    winsCoutnt.text =[NSString stringWithFormat:@"%ld",(long)losingCount]; 
    winsCoutnt.position = CGPointMake(CGRectGetMidX(self.frame) + 100,(CGRectGetMidY(self.frame)) + self.frame.size.height/4); 
    winsCoutnt.fontSize = 15.f; 
    [self addChild:winsCoutnt]; 



if([Chartboost hasRewardedVideo:@"NetworkVideo"] == YES) { 

      NSUserDefaults *scoreprefs = [NSUserDefaults standardUserDefaults]; 

      losingCount =[scoreprefs integerForKey:@"losingCount"]; 
      losingCount = losingCount +5; 
      [scoreprefs setInteger:losingCount forKey:@"losingCount"]; } 

Так что мой вопрос Как я могу обновить результат в сцене на экране в режиме реального времени, не заходя на другую сцену и возвращаться?

ответ

1

Просто обновите текст, где вы обновляете NSUserDefaults

losingCount=[scoreprefs integerForKey:@"losingCount"]; 
SKLabelNode *winsCoutnt = [SKLabelNode labelNodeWithFontNamed:@"ROTORcap Extended Bold"]; 
winsCoutnt.text =[NSString stringWithFormat:@"%ld",(long)losingCount]; 
winsCoutnt.position = CGPointMake(CGRectGetMidX(self.frame) + 100,(CGRectGetMidY(self.frame)) + self.frame.size.height/4); 
winsCoutnt.fontSize = 15.f; 
[self addChild:winsCoutnt]; 



if([Chartboost hasRewardedVideo:@"NetworkVideo"] == YES) { 

     NSUserDefaults *scoreprefs = [NSUserDefaults standardUserDefaults]; 

     losingCount =[scoreprefs integerForKey:@"losingCount"]; 
     losingCount = losingCount +5; 
     [scoreprefs setInteger:losingCount forKey:@"losingCount"]; 

     winsCoutnt.text =[NSString stringWithFormat:@"%ld",(long)losingCount]; 
} 
Смежные вопросы