他クラスのデリゲートメソッドを自分のクラスで使うにはデリゲートを使う。
1.宣言する(プロトコルを追加する)
2.デリゲートをselfに設定する
3.デリゲートメソッドを書く
————————–
プロトコルを追加したらデリゲートを設定しなくてはならない。
例えば、WKNavigationDelegateプロトコルを追加したら、
viewDidLoad内に「webView.navigationDelegate = self」と書いてデリゲートを設定する。
そうすることで、WKNavigationDelegateプロトコルのメソッド
func webView(_ webView: WKWebView, didCommit navigation: WKNavigation!) {
}
と
func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
}
が、自動で呼ばれるようになる。
viewDidLoad内やAction内でこれらのメソッドを呼んでいないのに、なぜプロトコルのメソッドは勝手に機能するのかはこれが理由。