我想将WKWebView
放在UIView
中,并留一些填充。假设50像素。这是Interface Builder中的外观:
不幸的是,该应用在运行时的行为不符合预期:
代码如下:
import UIKit
import WebKit
class ViewController: UIViewController {
@IBOutlet var webView: WebView!
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
let url = "http://apple.com"
webView.loadUrl(string: url)
}
}
class WebView: WKWebView {
required init?(coder: NSCoder) {
if let _view = UIView(coder: coder) {
super.init(frame: _view.frame, configuration: WKWebViewConfiguration())
autoresizingMask = _view.autoresizingMask
} else {
return nil
}
}
func loadUrl(string: String) {
if let url = URL(string: string) {
load(URLRequest(url: url))
}
}
}
什么可能导致这种问题,我该如何解决?
非常感谢!
答案 0 :(得分:1)
由于您是在情节提要中进行设置的,因此只需删除required init?(coder: NSCoder)
或使用:
required init?(coder: NSCoder) {
super.init(coder: coder)
}