我开始制作一个简单的应用程序,它只是使用WKWebView显示一个网页视图。一切都构建得很好,并且可以正常工作,唯一的问题是它总是全屏显示。理想情况下,它不应该延伸到iOS顶部的状态栏下面。它需要向下降低20像素,以便在其下方。我已经广泛搜索了解决方案,但没有改变其大小的任何内容。在InterfaceBuilder中没有设置任何内容,我正在通过编程完成所有操作。使用Swift。
这似乎是许多使用WKWebView的应用程序都会做的基本事情。它应该很简单。我可能错过了一些显而易见的东西。感谢您的帮助。提前致谢。
这是我目前的代码:
import UIKit
import WebKit
class ViewController: UIViewController, UIGestureRecognizerDelegate , UIWebViewDelegate, WKNavigationDelegate {
let url = NSURL(string:"http://stackoverflow.com")
var webView: WKWebView!
override func viewDidLoad() {
super.viewDidLoad()
webView = WKWebView(frame: CGRect( x: 0, y: 20, width: 380, height: 150 ), configuration: WKWebViewConfiguration() )
self.view = webView
self.view.frame = webView.frame
let req = NSURLRequest(URL:url!)
webView.loadRequest(req)
self.webView.allowsBackForwardNavigationGestures = true
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
非常感谢Emilio!!调整后的代码完美运行!
import UIKit
import WebKit
class ViewController: UIViewController, UIGestureRecognizerDelegate , UIWebViewDelegate, WKNavigationDelegate {
let url = NSURL(string:"http://stackoverflow.com")
var webView: WKWebView!
override func viewDidLoad() {
super.viewDidLoad()
webView = WKWebView(frame: CGRect( x: 0, y: 20, width: self.view.frame.width, height: self.view.frame.height - 20 ), configuration: WKWebViewConfiguration() )
self.view.addSubview(webView)
let req = NSURLRequest(URL:url!)
webView.loadRequest(req)
self.webView.allowsBackForwardNavigationGestures = true
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}