вызов didFini sh не работает в моем веб-просмотре - PullRequest
0 голосов
/ 05 мая 2020

Я новичок в IOS / Swift, я пытаюсь прослушать событие didFini sh, но оно не вызывается

    class MyWebView: UIViewController, WKScriptMessageHandler, WKNavigationDelegate {

    public var baseController : UIViewController?

    var linkOptions = [String: String]()


    @IBOutlet var web: WKWebView!

    override func loadView() {
        super.loadView()
        web.configuration.userContentController.add(self, name: "jsMessageHandler")
        web.configuration.userContentController.add(self, name: "jsErrorMessageHandler")
    }

    override func viewDidLoad() {
        super.viewDidLoad()

        let request = URLRequest(url: formatUrl())
        web.load(request)
        web.navigationDelegate = self
        web.addObserver(self, forKeyPath: "URL", options: .new, context: nil)
    }

    func web(_ web: WKWebView, didFinish  navigation: WKNavigation!)
    {
        print("---Hitted URL--->") // here you are getting URL
    }
}

Я следил за некоторыми примерами в Интернете, но ни один из них не работает для меня.

1 Ответ

0 голосов
/ 21 мая 2020

попробуйте настроить navigationDelegate перед загрузкой запроса

...