0

私のViewControllerで、設定すると

self.canDisplayBannerAds = YES; 

バナー広告は、SKScene のサイズを変更して、iAd ビューが画面の下部に収まるようにします。これにより、物事が移動し、異なって表示されます (背景の一部が見えなくなります)。ビュー全体のサイズを変更するのではなく、ビューの上に広告を表示するにはどうすればよいですか?

また、適切なタイミングでのみ表示されるように、ViewController の「canDisplayBannerAds」プロパティを SKScene から変更するにはどうすればよいですか?

4

1 に答える 1

0

あなたの質問の最初の部分であるiAd の位置と配置の変更についてはよくわかりません。この男の解決策をいじれば、それを理解できると思います。

2番目の部分については、SKSceneでcanDisplayBannerAds boolを変更するための最良の選択はNSNotificationCenterを使用することだと思います.これら2つのプロンプトはviewDidLoadメソッドにあります.

[[NSNotificationCenter defaultCenter] addObserver:self
                                         selector:@selector(showsBanner)
                                             name:@"showsBanner"
                                           object:nil];

[[NSNotificationCenter defaultCenter] addObserver:self
                                         selector:@selector(hidesBanner)
                                             name:@"hidesBanner"
                                           object:nil];

このコードの @selector 部分は、これらのメソッドを呼び出し、viewController にも配置されます。

-(void)hidesBanner {
     [_adView setAlpha:0];
     self.bannerIsVisible = NO;
}

-(void)showsBanner {
     [_adView setAlpha:1];
     self.bannerIsVisible = YES;
}

最後に、いずれかの SKScenes でいずれかのメソッドを使用したい場合はいつでも、次の行を記述します。

[[NSNotificationCenter defaultCenter]postNotificationName:@"hidesBanner" object:self];
        //above line calls hidesBanner, @"showsBanner" would call showsBanner
于 2014-07-28T05:36:25.033 に答える