2014-09-10 33 views
4

我正在開發一個使用swift編程的ios 8應用程序。 我正在嘗試使用gamecentercontroller來顯示遊戲中心排行榜。但每次它都顯示挑戰狀態而不是排行榜。這是我用過的代碼。遊戲中心挑戰顯示,而不是排行榜在ios 8應用程序中使用swift

func showLeaderboard() 
{ 
     var gcViewController: GKGameCenterViewController = GKGameCenterViewController() 
     gcViewController.leaderboardIdentifier = myLeaderboardIdentifier 

     gcViewController.viewState = GKGameCenterViewControllerState.Leaderboards 
     gcViewController.gameCenterDelegate = self 
     let vc = self.view?.window?.rootViewController 
     vc?.presentViewController(gcViewController, animated: true, completion: nil) 
} 

當我嘗試使用默認狀態像

gcViewController.viewState = GKGameCenterViewControllerState.Dafault 

然後,它顯示空白視圖(甚至挑戰)

只是胡亂懷疑「它有什麼用沙箱模式)

有人請幫忙,長時間卡在這裏

+0

你有什麼發現? – Antzi 2015-02-16 06:39:21

+0

這裏同樣的問題。仍處於沙盒模式。無法在生產中對其進行測試。 – user642252 2015-02-25 18:53:39

回答

1

它a當我寫信給蘋果時,我自然而然地開始了我的工作。 似乎是蘋果方面的問題。

0

請嘗試使用以下代碼。請記得用您的實際排行榜ID替換YourLeaderboardID。你的代碼看起來與我的代碼非常相似,但是你的代碼行的順序可能是錯誤的。

func showLeaderboard() { 

    var gcViewController: GKGameCenterViewController = GKGameCenterViewController() 
    gcViewController.gameCenterDelegate = self 

    gcViewController.viewState = GKGameCenterViewControllerState.Leaderboards 

    gcViewController.leaderboardIdentifier = "YourLeaderboardID" 
    self.showViewController(gcViewController, sender: self) 
    self.presentViewController(gcViewController, animated: true, completion: nil) 
} 
0

它只是發生在我身上,我最終在這裏。 我不知道它是否對某人有用,但在我的情況下,原因是我在獲得認證後以飛行模式脫機。