AdMob横幅会在首次加载时不时出现在首页指示器下方

当ViewControllers首次加载到我的应用中时,Admob标语不会出现在其专用的超级视图中,而是标语显示在主页指示器下方,如屏幕截图所示:

AdMob横幅会在首次加载时不时出现在首页指示器下方

我注意到,这不仅会在第一次加载时发生,还会不时出现。

当我在场景(ViewController)周围来回移动时,有时每个横幅都会以应有的方式出现在其专用的超级视图中,有时却没有。

Baners专用超级视图的最高限制是0到安全区。因此,它们应显示在导航栏的正下方。这些视图是按照从上到下的顺序设计的:

  1. 导航栏
  2. 安全区开始
  3. 包含横幅的简单UIView
  4. TableView
  5. 安全区结束
  6. 家庭指标

相关代码:

override func viewWillAppear(_ animated: Bool) {
    setBanner()
}

func setBanner() {
    banner.delegate = self
    banner.rootViewController = self
    banner.load(GADRequest())
    GAdmobileAds.sharedInstance().requestConfiguration.testDeviceIdentifiers =
    [ "kGADSimulatorID" ]        
    bannerContainerView.addSubview(banner)
}

我将setBanner()而不是func viewDidLoad()放在了viewWillAppear()中,但没有任何改变。

我在iOS模拟器和物理设备上测试并注意到了此行为。

当我在iPhone 8上进行测试时,不会出现此问题,因为它在安全区域下没有可见的空间。

我猜横幅广告在以某种方式可用之前会加载,但是我不确定。

更新:包含横幅的视图的约束:

  • 将行尾对齐至:安全区域
  • 对齐导致:安全区域
  • 高度等于:50
  • 底部空间:表格视图
  • 顶部对齐:安全区域
Asongze123456789 回答:AdMob横幅会在首次加载时不时出现在首页指示器下方

这是添加横幅广告的视图的约束问题。请检查或您可以显示 您给了哪些限制?

,

我意识到,此问题不是由包含横幅的UIView约束引起的,而是由在代码中(由/system/bin设置)的横幅约束引起的。我禁用了这样的约束,问题就解决了。

本文链接:https://www.f2er.com/3155217.html

大家都在问