Ios7 排行榜取消后,iAd横幅不显示

Ios7 排行榜取消后,iAd横幅不显示,ios7,iad,banner-ads,game-center-leaderboard,Ios7,Iad,Banner Ads,Game Center Leaderboard,我有一个显示iAd横幅的ViewController。为此,我只需包含以下行: self.canDisplayBannerAds = YES; 然后,我以模块方式展示了一个排行榜视图控制器,并在排行榜上启用iAd: - (void) presentLeaderboards { GKGameCenterViewController* gameCenterController = [[GKGameCenterViewController alloc] init]; gameCenterCo

我有一个显示iAd横幅的ViewController。为此,我只需包含以下行:

    self.canDisplayBannerAds = YES;
然后,我以模块方式展示了一个排行榜视图控制器,并在排行榜上启用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也显示在排行榜视图控制器上。问题是,当上面代码中的排行榜视图控制器gameCenterController被取消时,我用来显示iAd横幅的显示视图控制器不再显示任何iAd。

我找到了答案。如果我在切换到模型视图控制器排行榜视图控制器和关闭模型视图控制器之前设置canDisplayBannerAds,将其设置回YES,一切正常,当我返回主视图控制器时,我开始获得IAD

因此,在进行该步骤之前,请注意以下事项:

self.canDisplayBannerAds = YES;
然后,在关闭模型视图控制器后立即在主视图控制器中启用iAd:

- (void) gameCenterViewControllerDidFinish:(GKGameCenterViewController*) gameCenterViewController {
[self dismissViewControllerAnimated:YES completion:nil];
self.canDisplayBannerAds = YES;
}