WebKit支持较低版本的iOS



我正在尝试在应用程序中添加webView。

在iOS的低版本中,webView位于状态栏后面。在iOS 11及以上版本中,webView的位置正确。为什么它在较低版本的iOS中没有正确定位?如何在支持所有iOS设备的webView和状态栏之间添加空间?

这是我的代码

override func loadView() {
let webConfiguration = WKWebViewConfiguration()
webView = WKWebView(frame: .zero, configuration: webConfiguration)
webView.uiDelegate = self
view = webView  
}

我尝试添加边距和顶部约束。它不起作用。

let margins = view.layoutMarginsGuide
webView.topAnchor.constraint(equalTo: margins.bottomAnchor,constant : 200).isActive = true
view.layoutMargins = UIEdgeInsets(top: 164, left: 0, bottom: 0, right: 0)

希望你能理解我的问题。提前感谢。

我用这个来定位我的网页:

override func viewDidAppear(_ animated: Bool)
{
if #available(iOS 11.0, *)
{
allStack.topAnchor.constraint(equalTo: view.safeAreaLayoutGuide.topAnchor).isActive = true
}
else
{
allStack.topAnchor.constraint(equalTo: view.topAnchor, constant: 20).isActive = true
}
}

其中allStack是UIStackView,它包含我的自定义导航栏和WKWebView。

如果低于iOS 11,则将整个视图从顶部放置20点,否则将其隔离到安全区域。

最新更新