Ios 如何设置状态栏或安全区域以删除iPhone X上的空白?
我已经添加了使用安全区域指南的选项,但当我查看应用程序时,它似乎尊重安全区域,但有一些空白我无法消除。我不知道是什么原因造成的,也不知道如何改变颜色从白色 我已将背景色设置为您在下面看到的颜色Ios 如何设置状态栏或安全区域以删除iPhone X上的空白?,ios,swift,ios11,iphone-x,safearealayoutguide,Ios,Swift,Ios11,Iphone X,Safearealayoutguide,我已经添加了使用安全区域指南的选项,但当我查看应用程序时,它似乎尊重安全区域,但有一些空白我无法消除。我不知道是什么原因造成的,也不知道如何改变颜色从白色 我已将背景色设置为您在下面看到的颜色 view.backgroundColor = UIColor(red:0.227, green:0.251, blue:0.294, alpha:1) 我还设置了白色状态栏样式 UIApplication.shared.statusBarStyle = UIStatusBarStyle.lightCon
view.backgroundColor = UIColor(red:0.227, green:0.251, blue:0.294, alpha:1)
我还设置了白色状态栏样式
UIApplication.shared.statusBarStyle = UIStatusBarStyle.lightContent
我的主故事板
当视图在屏幕上可见时,本指南反映了
导航栏、选项卡栏、工具栏、,
和其他祖先的观点。(在tvOS中,安全区域反映了该区域
未覆盖屏幕挡板。)如果当前未显示视图
安装在视图层次结构中,或在屏幕上尚不可见
布局导向边缘与视图的边缘相等
您需要使用safeArea设置约束
使用safeArea
使用常量0,因此对象将不会剪裁。
编程方式为:
webView.translatesAutoresizingMaskIntoConstraints = false
if #available(iOS 11.0, *) {
let guide = self.view.safeAreaLayoutGuide
webView.trailingAnchor.constraint(equalTo: guide.trailingAnchor).isActive = true
webView.leadingAnchor.constraint(equalTo: guide.leadingAnchor).isActive = true
webView.bottomAnchor.constraint(equalTo: guide.bottomAnchor).isActive = true
webView.topAnchor.constraint(equalTo: guide.topAnchor).isActive = true
}
没有更多细节很难知道,但我猜白色区域是一个
ui视图
,用于在以前的iOS设备上为状态栏后面的区域着色。在故事板或代码中是否有添加到该位置的视图?@nathan我想你可能是对的。它是视图的一部分,但不确定该空间是如何添加的。我会发布更多我的主故事板的图片。你的网络视图有什么限制?@nathan发现是WebView.top限制。它被设置为基于superview的位置。我把它改为安全指南,然后用-24约束定位。我把它改成了0。不知道为什么它是24,我希望它将正确地工作,为所有类型的手机现在!我相信这会解决问题。我想我还必须确保顶部的安全区域约束也设置为0。即使我的webview约束都设置为0,我也必须将顶部对齐约束的wC wR字段设置为0。是的!使用常数=0
或更高值对齐到安全区域
if #available(iOS 11.0, *) {
webView.scrollView.contentInsetAdjustmentBehavior = .never;
}