如何检测WKWebView何时完成加载,以便从其中获取URL (例如使用委托方法)?
我为WKWebView实现了委托方法,但无法检测它何时完成视频加载。
import UIKit
import WebKit
class ViewController: UIViewController, WKUIDelegate, WKNavigationDelegate {
var webView: WKWebView!
override func viewDidLoad() {
super.viewDidLoad()
let preference = WKPreferences()
preference.javaScriptEnabled = true
let configuration = WKWebViewConfiguration()
configuration.preferences = preference
webView = WKWebView(frame: view.bounds, configuration: configuration)
view.addSubview(webView)
webView.uiDelegate = self
webView.navigationDelegate = self
webView.load(URLRequest(url: URL(string: "http://www.youtube.com")!))
}
func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
print("finish loading video")
}
}但是,当从YouTube加载完视频时,不会调用上面的方法。
非常感谢。
发布于 2018-08-04 09:41:14
SWIFT 4:
使用WKNavigationDelegate的以下委托方法。在哪里您可以检查是否已完成装载??在这里,您可以获得webView中加载的URL。
func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!)
{
let url = webView.url?.absoluteString
print("---Hitted URL--->\(url!)") // here you are getting URL
}https://stackoverflow.com/questions/42797029
复制相似问题