0
    復活宣言から何日が過ぎたでしょう...

    cocos2dで作った iPhoneアプリ「レッツ・ダンゴ」に、
    Game Centerのリーダーボード(ハイスコア)機能を追加したところ、
    ちょっと問題が発生してしまったので、対処法を書いておきます

    その問題とは!?
    ※この問題は、cocos2dだけのことかもしれませんのであしからず

    アプリでリーダーボードを開いたよ

    そんでもってリーダーボードを閉じました

    そしたらタッチが効かなくなっちゃった...

    というものです
    しかし「タッチは効かなくなった」といっても、なぜか”ゲームはできました”
    タッチできないのは、”広告”です
    ※なぜゲームはできるのかは触れずに進行します...

    「広告なんて押せなくてラッキーじゃん!!」
    という声も聞こえてきそうですが、気になる広告を見たい方々もいます!
    そして、なにより開発者にとっては死活問題です

    ...

    ということで、急いで広告をタッチできるようにしなければいけません

    で、本題に入ります...が、
    リーダーボードを設置する方法はここでは省略します(機会があればまた...)
    よろしければコチラをご覧ください
    >> Game Kitプログラミングガイド [PDF:日本語版]
    ※Appleの公式ガイドへのリンクです

    さて、
    アプリで標準のリーダーボードを開く際には、ガイドにも書いてありますが、

    - (void) showLeaderboard

    を使います
    リーダーボード(Leaderboard)を見せる(show)ってことですね

    コレを呼び出しますと、LeaderboardView が
    アプリの一番上にのっかります

    見終わったら(プレイヤーが完了ボタンを押したら)

    - (void)leaderboardViewControllerDidFinish
              :(GKLeaderboardViewController*)viewController

    が呼び出され、リーダーボードを消去してゲームの画面に戻ります
    めでたしめでたし!

    ・・・の予定でした
    ・・・が、ここで広告が押せなくなります

    全体像を図であらわしますと、


    まず、広告のViewがあります

    - (void) showLeaderboard でリーダーボードView が 広告View の上に重なります

    - (void)leaderboardViewControllerDidFinish でリーダーボードView が消えます

    リーダーボードView が消されたはずなのに、広告View は押せない (T_T)

    のようになります
    実際は、リーダーボードView が残ってしまっているようです

    なので、見えないが残ってしまったリーダーボードView を
    完全に消し去らないといけません

    ということは、リーダーボードを閉じるときにリムーブすればいいんじゃん?

    - (void)leaderboardViewControllerDidFinish
              :(GKLeaderboardViewController*)viewController
    {
         [self dismissModalViewControllerAnimated:YES];
         [viewController.view removeFromSuperview];
    }

    赤い一行を追加しました
    これで、OKか!?
    ...まだダメだ!!

    しかし、気落ちする必要はありません!
    あと一押しです

    - (void)leaderboardViewControllerDidFinish
              :(GKLeaderboardViewController*)viewController
    {
         [self dismissModalViewControllerAnimated:YES];
         [viewController.view.superview removeFromSuperview];
    }

    赤い部分をちょこっと追加します
    すると、リーダーボードViewにさよならすることができました

    メデタシメデタシ

    ということで、記事の長さと裏腹にあっさり解決してしまった感も
    ありますが、そういうことでございます

    おしまい




    コメント
    コメントする








       
    この記事のトラックバックURL
    トラックバック

    Calendar
    S M T W T F S
    1234567
    891011121314
    15161718192021
    22232425262728
    293031    
    << October 2017 >>
    My Apps
    有料アプリ

    無料アプリ

    Selected entries
    Categories
    AdSense
    Sponsored Links
    Archives
    Recent comment
    Links
    Profile
    Search this site.
    Others
    Mobile
    qrcode
    powered
    無料ブログ作成サービス JUGEM