我正在用UIWebView加载一个网络,一切都很好,除了iphoneX被切断了,在那里我放置了一个"OK“按钮和一个带有标题的标签。
// webView
var webView: WKWebView!
override func viewDidLoad() {
super.viewDidLoad()
let myURL = URL(string: "https://google.com")
let myRequest = URLRequest(url: myURL!)
webView = WKWebView(frame: CGRect( x: 0, y: 60, width: self.view.frame.width, height: self.view.frame.height - 60 ), configuration: WKWebViewConfiguration() )
//webView.backgroundColor = UIColor.blue
self.view.addSubview(webView)
webView.load(myRequest)
self.webView.allowsBackForwardNavigationGestures = true
//hide navegation bar
self.navigationController?.setNavigationBarHidden(true, animated: true)
// add cornerRadius to view
navegador.layer.cornerRadius = 10
//add observer to get estimated progress value
self.webView.addObserver(self, forKeyPath: "estimatedProgress", options: .new, context: nil)
}任何解决这个僵局的建议。

发布于 2018-05-19 03:27:33
StatusBar在iPhoneX中的高度高于其他设备中的高度,因此有必要计算此高度并将此值用于WebView坐标。
@IBOutlet weak var myTopBar: UIView!
//Get height status bar let statusBarHeight = UIApplication.shared.statusBarFrame.height
// to see correctly on all device models the new height will be: let heightTotal = self.myTopBar.frame.height + statusBarHeight
3:在webView中,使用这个高度:
webView = WKWebView(frame: CGRect( x: 0, y: heightTotal, width: self.view.frame.width, height: self.view.frame.height - heightTotal), configuration: WKWebViewConfiguration() )https://stackoverflow.com/questions/50364274
复制相似问题