【发布时间】:2019-04-22 12:59:24
【问题描述】:
我正在尝试使用 webview 编写控制器,我需要 WKNavigationDelegate 方法,问题是这些方法根本没有被执行。
这是我的控制器:
import UIKit
import WebKit
public class WebViewController: UIViewController {
private let webView: WKWebView = WKWebView()
override public func viewDidLoad() {
super.viewDidLoad()
webView.navigationDelegate = self
webView.isUserInteractionEnabled = true
view = webView
}
}
extension WebViewController: WKNavigationDelegate {
private func webView(_ webView: WKWebView, didCommit navigation: WKNavigation!) {
debugPrint("didCommit")
}
private func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
debugPrint("didFinish")
}
private func webView(_ webView: WKWebView, didFail navigation: WKNavigation!, withError error: Error) {
debugPrint("didFail")
}
}
这个控制器被添加到使用容器视图的顶视图控制器中,webview 也正确加载了网站。有没有人遇到过类似的问题或者知道我做错了什么
【问题讨论】:
-
你试过在每个方法中添加断点吗?
-
@Shabirjan 是的,我做到了,这就是我测试它的方式
-
好吧,只是提示,尝试从每个
Delegate方法中删除private并尝试。