gpt4 book ai didi

ios - 在 IOS 11 之前如何以编程方式获取安全区域的高度?

转载 作者:行者123 更新时间:2023-12-02 01:09:29 25 4
gpt4 key购买 nike

如果不使用 safeAreaLayoutGuide (我的目标是 IOS 9+),有没有什么方法可以以编程方式获取 IOS 中“安全区域”的高度,而不必为此目的创建一个新 View (仅限于安全区域) ?

我无法设置安全区域的导出,因为它不是 UIView...甚至不是任何类型的类。

如果我只是在 ViewController 中使用 self.view.height,它会太高(错误)。

还有其他方法吗?

最佳答案

UIViewController 中,您可以使用顶部和底部布局指南,如下所示:

let safeAreHeight = self.view.frame.height - self.topLayoutGuide.length - self.bottomLayoutGuide.length

对于UIView,您可以使用带有条件检查的safeAreaLayoutGuide:

let verticalSafeAreaInset: CGFloat
if #available(iOS 11.0, *) {
verticalSafeAreaInset = self.view.safeAreaInsets.bottom + self.view.safeAreaInsets.top
} else {
verticalSafeAreaInset = 0.0
}
let safeAreaHeight = self.view.frame.height - verticalSafeAreaInset

由于运行 iOS 9 和 10 的设备没有安全区域,因此默认为 0.0 是安全的。

关于ios - 在 IOS 11 之前如何以编程方式获取安全区域的高度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53850172/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com