Вы должны реализовать WKNavigationDelegate
в своем классе.
Вот несколько полезных делегатов. ( Делегаты записаны в Swift . Те же делегаты доступны в цель C .)
// MARK:- WebKit Navigation Delegate
func webView(_ webView: WKWebView, didStartProvisionalNavigation navigation: WKNavigation!) {
print("didstart called")
//Here you can open url.
UIApplication.shared.open((webView.url)!, options: [:], completionHandler: nil)
}
func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
print("didFinish navigation: \(navigation)")
}
func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void) {
decisionHandler(.allow)
}
func webView(_ webView: WKWebView, didReceiveServerRedirectForProvisionalNavigation navigation: WKNavigation!) {
print("didReceiveServerRedirectForProvisionalNavigation navigation: \(navigation)")
}
func webView(_ webView: WKWebView, didCommit navigation: WKNavigation!) {
print("didCommit: \(navigation)")
}
func webView(_ webView: WKWebView, didFail navigation: WKNavigation!, withError error: Error) {
print("loading Error: \(error)")
}
Вы можете написать свою логику в этих функциях.
Чтобы узнать о Посетите здесь .