我正在嘗試爲我的iOS應用添加終身成就。也就是說,自從他第一次玩遊戲以來,用戶執行單次動作的次數是多少次。換句話說,自從......有多少次殺人後,我使用的是基於蘋果公司提供的一個代碼:iOS遊戲中心:創造終身成就
.h文件中:
int64_t lifetimeScore;
IBOutlet UILabel *lifetimeScoreLabel;
.m文件:
- (IBAction) increaseScore {
self.lifetimeScore = self.lifetimeScore + 1;
lifetimeScoreLabel.text = [NSString stringWithFormat: @"%ld", self.lifetimeScore];
// Saving the Score:
NSUserDefaults * defaults = [NSUserDefaults standardUserDefaults];
[defaults setInteger:lifetimeScore forKey: @"Score"];
[defaults synchronize];
[self checkAchievements]; }
- (void)viewDidLoad {
[super viewDidLoad];
// Loading the Lifetime Score:
self.lifetimeScore = [[NSUserDefaults standardUserDefaults] integerForKey: @"Score"];
lifetimeScoreLabel.text = [NSString stringWithFormat: @"%ld", self.lifetimeScore];
(...)
}
我的偉大工程,沒有警告,但每次我關閉了應用程序,將其從Multitask欄中刪除並再次打開應用程序,lifetimeScore回到零。我試圖保存int_64使用NSUserDefaults,但到目前爲止,我不能讓它工作...任何想法?
編輯:代碼是固定的,現在它的工作100%,以防萬一任何人想要使用它。完整的源代碼可以在這裏找到:http://mobile.tutsplus.com/tutorials/iphone/ios-sdk-game-center-achievements-and-leaderboards-part-2/
如果最後一行說@「商店」或@ 「得分了」?也許它正在工作,它只是無法找到關鍵。 – AndyD273
謝謝!好消息:這是問題!壞消息:失去2個小時試圖找到錯誤,這是一個拼寫錯誤... – tomDev
沒問題,很高興它是簡單的:)我還沒有搞亂遊戲中心。 – AndyD273