swift - 将 Google Admob 横幅固定到 iPhone X 的底部

标签 swift autolayout admob

我在旧项目的主屏幕底部有一个 Google Admob 横幅(用代码创建)。它在所有设备上都能完美运行,除了 Xcode 9 模拟器中的 iPhone X。横幅固定在屏幕的绝对底部,位于主页“按钮”手势区域的后面。我需要它位于底部安全区域之上。

adBannerView.center = CGPoint(x: view.frame.midX, y: view.bounds.height - adBannerView.bounds.height / 2)

如何更改中心点,使横幅底部位于 Home 手势区域上方?

作为引用,这里是所发生情况的屏幕截图。 Admob banner behind iPhone X home area

最佳答案

您可以使用safeAreaLayoutGuide为admob横幅设置底部约束.

if #available(iOS 11, *) {
    NSLayoutConstraint(item: admobbanner, attribute: .bottom, relatedBy: .equal, toItem: view.safeAreaLayoutGuide.bottomAnchor, attribute: .bottom, multiplier: 0.0, constant: 0.0)
}

或者使用 snapkit:

if #available(iOS 11, *) {
    make.bottom.equalTo(view.safeAreaLayoutGuide.snp.bottomMargin)
}

它将留下空间= safeAreaLayoutGuide BottomMargin

关于swift - 将 Google Admob 横幅固定到 iPhone X 的底部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46376409/

相关文章:

ios - 未呈现的 ViewController 的 InitData?

ios - 更改 UIPageViewController 中显示的初始 View Controller

swift - 如何修复 GADBannerView 的属性以便加载请求

ios - 尝试将 AdWhirl 与 Admob 结合使用时出错

ios - 相机没有指向我想要使用 SceneKit 的地方

ios - 在 iOS、Swift 中从 firestore 获取时,带有标签、图像、gif 和视频的 TableView 挂起/卡住不正确

ios - iOS 6 中自动布局的动态大小

ios - 在 IB 中仅更改 iPhone 4 的约束值

ios - 如何使用自动布局来布局三个项目水平相等

android - 如何将 AdMob 放置在屏幕顶部(上方)Android Actionbar?