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

时间:2014-05-01 18:31:06

标签: ios sprite-kit

如何在 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];

}

1 个答案:

答案 0 :(得分:2)

我无法从你发布的代码中看出你已经实施了多少,所以为了完整性......

导入iAd

@import iAd;

我的偏好是将ADBannerView类变量创建为私有实例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 {
}