我已阅读Human Interface Guidelines for iPhone X,并未明确说明安全区域' (适用于iPhone X上顶部和底部条的区域)。我想知道这个区域的像素尺寸,包括从顶部和底部移除的尺寸。
答案 0 :(得分:26)
TL; DR:
纵向
在风景中
资料来源:挖掘20个关于这个维度的资源和......在iOS模拟器中的实践:)
答案 1 :(得分:14)
使用以下代码打印当前窗口的安全区域插图,可以获得顶部和底部安全区域的点尺寸。
if #available(iOS 11.0, *) {
UIApplication.shared.keyWindow?.safeAreaInsets
// ...
}
在纵向中,顶部区域 44点长,底部区域 34点长。
由于iPhone X的分辨率为 @ 3x ,因此顶部区域的长度为 132像素,底部区域的长度为 102像素。
答案 2 :(得分:7)
Xcode 9在界面构建器中引入了安全区域布局指南。您可以通过进入故事板的文件检查器和ticking the checkbox labelled "Use Safe Area Layout Guides"
来打开它们每当您向根视图添加约束时,您都可以选择将其约束到安全区域。 In this photo,橙色视图被约束到安全区域的边缘,而蓝色视图被约束到超视图的边缘。
从那里我们可以计算出44个点用于顶部安全区域,而34个点用于底部区域。
答案 3 :(得分:0)
您可以从safeAreaInsets
中视图的UIViewController
属性中获取它。
答案 4 :(得分:0)
您不需要调用单例 UIApplication
,也可以从您的视图布局中获取它们。
self.view.safeAreaInstes.
(上、下、左、右)