Swift転職なら=>【LevTech】
↑クリックして拡大
↑クリックして拡大
↑クリックして拡大
↑クリックして拡大

頭痛が減ったので共有です!

rebuild.fmを応援しています!

HOME > GameCenterのGKScoreのLeaderboardでスコア確認

GameCenterのGKScoreのLeaderboardでスコア確認

GKScoreにてスコアが送信されたデータスコアをLeaderboardで確認する方法を説明します。

スクリーンショット:リーダーボードのサンプル画像

サンプル構文


//GameCenterのサーバに送信されたスコアを確認するコードです

var localPlayer = GKLocalPlayer();
localPlayer.loadDefaultLeaderboardIdentifierWithCompletionHandler({ (leaderboardIdentifier : String!, error : NSError!) -> Void in
if error != nil {
    println(error.localizedDescription);
} else {
    let gameCenterController:GKGameCenterViewController = GKGameCenterViewController();
    gameCenterController.gameCenterDelegate = viewControllerWithGameCenterDelegate;//このViewControllerにはGameCenterControllerDelegateが実装されている必要があります
    gameCenterController.viewState = GKGameCenterViewControllerState.Leaderboards;
    gameCenterController.leaderboardIdentifier = "123a4bcdef";//該当するLeaderboardのIDを指定します
    viewControllerWithGameCenterDelegate.presentViewController(gameCenterController, animated: true, completion: nil);
}
})

※注意①:上記実施前にはGKLocalPlayerにてログイン処理を行ってください。ログイン済前提の処理です。
※注意②:Deletegaを受け止めるViewControllerにはGameCenterControllerDelegateが実装されている必要があります。 Objective-Cと少し記載が違いますのでご注意ください。(以下参照)

//GameCenterControllerDelegateを実装したUIViewController

import UIKit
import GameKit
class viewControllerWithGameCenterDelegate: UIViewController,GKGameCenterControllerDelegate {
    override func viewDidLoad() {
    }
}
上記を単純に実装しただけでは表示されたLeaderBoardの表示が消えませんので、以下のようにDelegateを受け止めた親Viewがdissmissする処理を実行してください。

//利用方法

class viewControllerWithGameCenterDelegate: UIViewController,GKGameCenterControllerDelegate {
    override func viewDidLoad() {
    }
    func gameCenterViewControllerDidFinish(gameCenterViewController: GKGameCenterViewController!){
        //code to dismiss your gameCenterViewController
        gameCenterViewController.dismissViewControllerAnimated(true, completion: nil);
    }
}

↓こんな記事もありますよ!

Pintoを1年利用してほんとにプログラマーの背筋がピンとなった(P!nto)

猫背どうにかならないかな、、、、。プログラマーとしての職業上日中8割9割は画面と押し問答している私は、 熱中すればするほど画面に食い入り知らず知らずに前のめりの姿勢に。姿勢が悪い、、、、分かってるんだけど、やめられない。

SwiftでZipファイルの解凍や圧縮する方法

SwiftでZipの解凍・圧縮処理の解説です。標準ライブラリにZip2があるやら3rdパーティのSSArchiveのObjective-Cのライブラリを Swiftにブリッジして利用するのが良い等の記載がありましたので調査してみます。

UIToolBar

画面の端っこに追加できるツールバーコントロール。アプリにピリッとアクセントを付けます。機能を追加したい時に便利です
このエントリーをはてなブックマークに追加
右側のFacebookのLikeをクリック頂けると記事更新の際に通知されますので宜しければご利用下さい!