未分類

デリゲートの基本

投稿日:

他クラスのデリゲートメソッドを自分のクラスで使うにはデリゲートを使う。

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内でこれらのメソッドを呼んでいないのに、なぜプロトコルのメソッドは勝手に機能するのかはこれが理由。

-未分類

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

collectionViewの基本的な使い方

1.collectionViewを画面一杯に配置する。CellのIdentifierに任意の名前「Cell」とつける。 2.プロトコルを追加し、デリゲートの設定をする。 class ViewContr …

no image

Button押下時にTextFieldを起動させる方法

Buttonを押したActionで、TextFieldにフォーカスを当てて、キーボードを出したい。 textFieldにフォーカスを当てるにはbecomeFirstResponder()を使う。 @I …

画像を挿入して、位置や大きさを調整する方法

プロジェクトパネルに読み込む ↓ シーケンスに持っていってクリップを作成 ↓ そのクリップを選択した状態でエフェクトコントロールを開くと、位置や大きさが調整できる。(fxがつく) ※なぜか直接動かせな …

no image

xcodeでファイル名の変更をする

xcodeでファイル名の変更をする簡単な方法↓ 参考:Xcodeでファイルの名前を変更またはリファクタリングする

no image

UIViewの下のタッチイベントを使えるようにする方法

UIViewをのせると、その下にあるボタンやcollectionViewのタッチイベントを感知しなくなる。 UIViewのタッチイベントを透過することで、下のボタンなどが使えるようになる。 Story …