0

iAd バナーを表示する ViewController があります。これを行うには、次の行を含めるだけです。

    self.canDisplayBannerAds = YES;

次に、Leaderboard ビュー コントローラーをモーダルに表示し、Leaderboard で iAd も有効にします。

- (void) presentLeaderboards {
GKGameCenterViewController* gameCenterController = [[GKGameCenterViewController alloc] init];
gameCenterController.viewState = GKGameCenterViewControllerStateLeaderboards;
gameCenterController.gameCenterDelegate = self;
gameCenterController.topViewController.canDisplayBannerAds = YES;
[self presentViewController:gameCenterController animated:YES completion: nil];

}

iAd は Leaderboard ビューコントローラーにも表示されます。問題は、Leaderboard ビュー コントローラー (上記のコードの gameCenterController) が閉じられると、iAd バナーを表示していたビュー コントローラーに iAd が表示されなくなることです。

4

1 に答える 1

0

私は答えを見つけました。canDisplayBannerAdsモデル ビュー コントローラー (Leaderboard ビュー コントローラー) へのセグエを実行する直前に設定し、モデル ビュー コントローラーを閉じるときにそれを YES に戻すと、すべて正常に動作し、アプリケーションに戻ったときに iAd を取得し始めます。メイン ビュー コントローラー。

したがって、セグエを実行する前に次のようにします。

self.canDisplayBannerAds = YES;

次に、モデル ビュー コントローラーを閉じた直後に、メイン ビュー コントローラーで iAd を有効にします。

- (void) gameCenterViewControllerDidFinish:(GKGameCenterViewController*) gameCenterViewController {
[self dismissViewControllerAnimated:YES completion:nil];
self.canDisplayBannerAds = YES;
}
于 2014-07-06T01:27:57.833 に答える