Не удается присвоить значение типа 'ViewController' типу 'WKNavigationDelegate?' - PullRequest
0 голосов
/ 31 марта 2020

Я новичок в использовании webkit.

Я хочу передать свой WKWebView моему контроллеру представления, но он выдаёт мне ошибку:

Невозможно присвоить значение типа ' ViewController 'для ввода' WKNavigationDelegate? '

Мой код:

import UIKit
import WebKit
class ViewController: UIViewController {

    @IBOutlet weak var webKitComponent: WKWebView!

    override func viewDidLoad() {
        super.viewDidLoad()
        webKitComponent.navigationDelegate = self
    }

}

Ответы [ 2 ]

0 голосов
/ 31 марта 2020

Добавить к ответу @ Sh_Khan; причина вашей ошибки в том, что класс ViewController не соответствует протоколу WKNavigationDelegate из коробки.

Вы должны привести его в соответствие, добавив протокол и необходимые методы, как показал вам Ш_Кхан.

0 голосов
/ 31 марта 2020

Добавить

extension ViewController: 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")
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...