在GADBannerView中更改adsize

时间:2013-11-22 12:49:50

标签: ios admob landscape-portrait

我集成了admob.My应用程序支持纵向和横向模式。在纵向模式下,它完美地工作但横向模式没有改变adsize.In横向模式,bannerview广告包含左右空间。

如何更改adsize?

请帮帮我。

5 个答案:

答案 0 :(得分:2)

如果您要查找全角广告,请使用智能横幅广告格式:

-(void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInt
                               duration:(NSTimeInterval)duration {
  if (UIInterfaceOrientationIsLandscape(toInt)) {
    self.adBanner.adSize = kGADAdSizeSmartBannerLandscape;
  } else {
    self.adBanner.adSize = kGADAdSizeSmartBannerPortrait;
  }
}

像这样更改广告尺寸会自动使用新尺寸触发新请求。

答案 1 :(得分:1)

我的解决方案是简单地缩放横幅视图,因为其他一切似乎都失败了:

https://stackoverflow.com/a/32203739/606351

答案 2 :(得分:1)

快速回答赞美obj-c。

override func viewWillTransitionToSize(size: CGSize, withTransitionCoordinator coordinator: UIViewControllerTransitionCoordinator) {
    if UIDevice.currentDevice().orientation.isLandscape.boolValue {
        self.bannerView.adSize = kGADAdSizeSmartBannerLandscape;
    } else {
        self.bannerView.adSize = kGADAdSizeSmartBannerPortrait;
    }
}

答案 3 :(得分:0)

在自动委托方法中简单地将GADBannerView框架的宽度设置为self.view.frame.size.width。喜欢这个

- (BOOL)shouldAutorotate 
{
   CGRect tframe = _adView.frame;
   tframe.size.width = self.view.frame.size.width;
   _adView.frame = tframe;
}

答案 4 :(得分:0)

对于风景 Ipad和Iphone

[bannerView setAdSize:GADAdSizeFullWidthLandscapeWithHeight(90)];

[bannerView setAdSize:GADAdSizeFullWidthLandscapeWithHeight(50)];

肖像 Ipad和Iphone

[bannerView setAdSize:GADAdSizeFullWidthPortraitWithHeight(90)];

[bannerView setAdSize:GADAdSizeFullWidthPortraitWithHeight(50)];