0

在我的 ViewController 中,当我设置

self.canDisplayBannerAds = YES; 

横幅广告会调整我的 SKScene 的大小以适应屏幕底部的 iAd 视图。这会导致事物四处移动并以不同方式显示(我的部分背景被切掉了)。如何使广告显示在我的视图之上,而不是调整整个视图的大小?

另外,如何从 SKScene 更改 ViewController 的“canDisplayBannerAds”属性,使其仅在适当的时间显示?

4

1 回答 1

0

我不确定你问题的第一部分,改变 iAd 的位置和位置我认为如果你摆弄这个人的解决方案,你就可以把它弄下来。

至于第二部分,我认为在 SKScene 中更改 canDisplayBannerAds bool 的最佳选择是使用 NSNotificationCenter,这两个提示将在您的 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 回答