我使用以下代码显示排行榜:
gameCenterVIEwController.leaderboardIDentifIEr = leaderboardID
这适用于普通排行榜,但在使用leaderboardSetID时无法加载任何排行榜集.你可以直接链接到排行榜集,如果是这样,你怎么做?
谢谢.
解决方法 请参考以下代码并交叉验证您的配置.希望这会对你有所帮助.
import GameKitclass YourVIEwController: UIVIEwController,GKGameCenterControllerDelegate {var gcEnabled = Bool() // Stores if the user has Game Center enabledvar gcDefaultleaderBoard = String() // Stores the default leaderboardIDoverrIDe func vIEwDIDLoad() { super.vIEwDIDLoad() self.authenticateLocalPlayer()}func authenticateLocalPlayer(){ let localPlayer: GKLocalPlayer = GKLocalPlayer.localPlayer() localPlayer.authenticateHandler = {(VIEwController,error) -> VoID in if((VIEwController) != nil) { // 1 Show login if player is not logged in self.presentVIEwController(VIEwController!,animated: true,completion: nil) } else if (localPlayer.authenticated) { // 2 Player is already euthenticated & logged in,load game center self.gcEnabled = true // Get the default leaderboard ID localPlayer.loadDefaultleaderboardIDentifIErWithCompletionHandler({ (leaderboardIDentifer: String?,error: NSError?) -> VoID in if error != nil { print(error) } else { self.gcDefaultleaderBoard = leaderboardIDentifer! } }) } else { // 3 Game center is not enabled on the users device self.gcEnabled = false print("Local player Could not be authenticated,disabling game center") print(error) } }} @IBAction func clickToleaderBoard(sender: UIbutton) { let gcVC: GKGameCenterVIEwController = GKGameCenterVIEwController() gcVC.gameCenterDelegate = self gcVC.vIEwState = GKGameCenterVIEwControllerState.leaderboards gcVC.leaderboardIDentifIEr = "YourleaderboardID" self.presentVIEwController(gcVC,completion: nil) }func savescoreOnGameCenter(){ let leaderboardID = "YourleaderboardID" let sscore = GKscore(leaderboardIDentifIEr: leaderboardID) sscore.value = Int64(10) GKscore.reportscores([sscore],withCompletionHandler: { (error: NSError?) -> VoID in if error != nil { print(error!.localizedDescription) } else { print("score submitted") } })}func gameCenterVIEwControllerDIDFinish(gcVIEwController: GKGameCenterVIEwController){ self.dismissVIEwControllerAnimated(true,completion: nil)}}
更新
另请检查后端的排行榜配置.
这里有一些好帖子.
http://www.appcoda.com/ios-game-kit-framework/
https://developer.apple.com/game-center/
https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/GameKit_Guide/GameCenterOverview/GameCenterOverview.html
总结以上是内存溢出为你收集整理的如何在iOS中显示排行榜集全部内容,希望文章能够帮你解决如何在iOS中显示排行榜集所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)