如何将SpriteKit AdBanner放置在视图顶部?

如何在SpriteKit应用程序的视图顶部放置一个iAd Banner

横幅工作完美,但在错误的位置。

以下是iAd Banner的代码,但总是在下面:

ViewController.m

- (void)viewDidLoad { [super viewDidLoad]; // Configure the view. SKView * skView = (SKView *)self.originalContentView; skView.showsFPS = YES; skView.showsNodeCount = YES; // Create and configure the scene. SKScene * scene = [MyScene sceneWithSize:skView.bounds.size]; scene.scaleMode = SKSceneScaleModeAspectFill; self.canDisplayBannerAds = YES; // Present the scene. [skView presentScene:scene]; } 

我无法从你发布的代码中知道你已经实现了多less,所以为了完整性…

导入iAd

 @import iAd; 

我的首选是创buildADBannerView类variables作为私人实例iVar。

 @implementation ViewController { ADBannerView *_bannerView; } 

然后在viewDidLoad中

 -(void)viewDidLoad { // iAd support _bannerView = [[ADBannerView alloc] initWithAdType:ADAdTypeBanner]; _bannerView.autoresizingMask = UIViewAutoresizingFlexibleWidth; _bannerView.delegate = self; [self.view addSubview:_bannerView]; } 

对于横跨屏幕顶部显示的iAd横幅,这已经是将其显示在屏幕上所需的全部内容。

对于委托方法,我目前的策略是在没有任何显示的情况下隐藏横幅。

 #pragma mark - iAd Methods - (void)bannerViewDidLoadAd:(ADBannerView *)banner { _bannerView.hidden = NO; } - (void)bannerView:(ADBannerView *)banner didFailToReceiveAdWithError:(NSError *)error { _bannerView.hidden = YES; } - (BOOL)bannerViewActionShouldBegin:(ADBannerView *)banner willLeaveApplication:(BOOL)willLeave { return YES; } - (void)bannerViewActionDidFinish:(ADBannerView *)banner { }