iOS 〜テキストフィールドのデリゲート〜

こんにちはうさです。 今回はデリゲートについて書いていきます。 デリゲート??初めて聞く用語ですね。 デリゲートとは こちらにも記述されている通り、 イベント等の処理の受付だけを行い、 処理は他のクラスに任せる事のようです。 処理を行う方法としては
  • デリゲートしたいクラスのデリゲートプロトコルの採用を宣言する。
  • デリゲートしたいインスタンスのdelegateプロパティにselfを設定する
  • デリゲートメソッドを実装して処理を定義する
といった事を行います。 デリゲートの大枠を掴めたところで 実際に例としてテキストフィールドを使っていきます。 まずは、Objectライブラリの中から「TextField」をドラッグ&ドロップします。 そのとき、Attributesインスペクタでテキストフィールドが空の時の文言や使用するキーボード等の設定を行います。 そして、先ほどのテキストフィールドをエディタへドロップしプロパティ宣言しました。 ここから、デリゲートプロトコルを宣言していきます。 「ViewControllerクラスのヘッダファイル」の@omterface ViewController:UIViewControllerの後ろにプロトコル宣言をします。 それがこちら 書き方は「<プロトコル>」となります。 続いてViewControllerクラスの実装ファイルに記述していきます。 コードがこちら デリゲートしたいインスタンスのdelegateプロパティにselfを設定するに当たるのがこちらの一行 self.myTextField.delegate = self; これでテキストフィールドのデリゲートになりました。 最後にデリゲートメソッドを記述します。 最初の行がそれに当たります。 以降がそのreturnキーの入力イベントを受け止める処理になります。 [self.view endEditing:YES]; はキーボードを下げる(引っ込める)ことを意味し NSLog(@”入力された文字&gt; %@” , self.myTextField.text); はテキストフィールドに入力された文字を出力します。 return NO; これはテキストフィールドに改行コードを入力しないことを表します。 アプリを起動してテキストフィールドをタップすると キーボードが出現します。 そして、returnキーを押すとキーボードが下がります。 スクリーンショット 2015-02-03 15.31.58 今回で書籍の半分以上終わりましたが、 まだまだわからないことが多いので、より多くのコードに触れて理解を深めていきます。 こちらはその書籍 以上うさでした。

Usami Go

コメントを残す

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