Как разместить рекламный блок SpriteKit в верхней части представления?
Как разместить баннер iAd в верхней части представления в приложении SpriteKit?
Баннер работает отлично, но не в той позиции.
Вот код для баннера iAd, но всегда ниже:
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 ответ
Я не могу сказать из кода, который вы разместили, сколько вы уже реализовали, поэтому для полноты...
Импортировать 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 {
}