Admob GADBannerView,当 UINavgiationController 存在时不显示

Posted

技术标签:

【中文标题】Admob GADBannerView,当 UINavgiationController 存在时不显示【英文标题】:Admob GADBannerView, does not show when UINavgiationController is present 【发布时间】:2015-11-12 05:40:47 【问题描述】:

我一直在尝试将 adMob 横幅广告集成到我的应用程序中,并且在我添加 uinavigationcontroller 之前一切正常。测试广告不再显示。故事板上唯一的视图控制器是 uiviewcontroller 和导航视图控制器。

基于:https://developers.google.com/admob/ios/quick-start

//ViewController.swift

override func viewDidLoad() 
 super.viewDidLoad()

  println("Google Mobile Ads SDK version: " + GADRequest.sdkVersion())
  bannerView.adUnitID = "ca-app-pub-3940256099942544/2934735716"
  bannerView.rootViewController = self
  bannerView.loadRequest(GADRequest())

我正在使用 xCode7 和 swift

【问题讨论】:

【参考方案1】:

试试这个

//ViewController.swift

override func viewDidLoad() 
    super.viewDidLoad()

    // GADBannerView will show in top left of the view
    let bannerView = GADBannerView(adSize:kGADAdSizeBanner,origin: CGPoint(x: 0.0, y: 0.0))
    bannerView.adUnitID = "ca-app-pub-3940256099942544/2934735716"
    bannerView.rootViewController = self
    self.view.addSubview(bannerView)
    bannerView.loadRequest(GADRequest())

【讨论】:

【参考方案2】:

试试这个(把它转换成 swift),

[self.navigationController setToolbarHidden:NO];
bannerView = [[GADBannerView alloc] initWithAdSize:kGADAdSizeBanner];
bannerView.adUnitID = @"ca-app-pub-3940256099942544/2934735716";
bannerView.rootViewController = self;
[self.navigationController.toolbar addSubview: bannerView];

更新日期:(在 Swift 中)

self.navigationController!.setToolbarHidden(false, animated: true)
bannerView.adUnitID = "ca-app-pub-3940256099942544/2934735716";
bannerView.rootViewController = self;
self.navigationController?.toolbar.addSubview(bannerView)
bannerView.loadRequest(GADRequest())

【讨论】:

图片加载到navigationController之上 我更新了 swift self.navigationController?.setToolbarHidden(false, animated: true) bannerView.adUnitID = "ca-app-pub-3940256099942544/2934735716" bannerView.rootViewController = self bannerView.loadRequest 的代码(GADRequest()) self.navigationController?.toolbar.addSubview(bannerView) 你是如何初始化bannerView的?用 kGADAdSizeBanner 初始化它 @IBOutlet weak var bannerView: GADBannerView! 初始化如下,bannerView = [[GADBannerView alloc] initWithAdSize:kGADAdSizeBanner];如果以上答案有帮助,请投票。

以上是关于Admob GADBannerView,当 UINavgiationController 存在时不显示的主要内容,如果未能解决你的问题,请参考以下文章

AdMob 错误 - 必须在调用 loadRequest 之前设置 GADBannerView 的 rootViewController 属性:

如何将 AdMob GADBannerView 添加到每个视图

暂停广告刷新 admob ios

Admob不显示广告

iOS:Admob 智能横幅不占用全宽

Admob横幅不坚持uitableview swift的底部