hey, thanks for the suggestion, I did as below, and even set a local instance to it, it's still print as nil, could it be a bug of code compiler?
import WebKit
@objc(SUKYKWKWebView)
public class KYKWKWebView: WKWebView {
@objc public override var navigationDelegate: WKNavigationDelegate? {
@objc set {
let naviStrong = newValue
let deleg = super.navigationDelegate
let delegate = NaviDele()
super.navigationDelegate = naviStrong
print("_wkWebView.navigationDelegate ---------Would have set aVar to \(newValue) from \(super.navigationDelegate)")
}
@objc get {
return super.navigationDelegate
}
}
@objc func setNavigataionDelegate(dele: WKNavigationDelegate) {
super.navigationDelegate = dele
}
}
class NaviDele: NSObject, WKNavigationDelegate {
func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
print("_wkWebView.navigationDelegate --- didFinish &&&&&&&&&&&&&&&")
}
func webView(_ webView: WKWebView, didFailProvisionalNavigation navigation: WKNavigation!, withError error: Error) {
print("_wkWebView.navigationDelegate --- didFailProvisionalNavigation &&&&&&&&&&&&&&&")
}
func webView(_ webView: WKWebView, didCommit navigation: WKNavigation!) {
print("_wkWebView.navigationDelegate --- didCommit &&&&&&&&&&&&&&&")
}
}
Topic:
Programming Languages
SubTopic:
General
Tags: