UITextFieldのデリゲートメソッド一覧と
各メソッドの簡易的な説明をメモしてみました。
参考までにどうぞ。
ソースコード
# No.01 -(BOOL)textFieldShouldBeginEditing:(UITextField*)textField { // 編集開始時に呼ばれるメソッド // YESを返した場合は編集が可能に // NO を返した場合は編集が不可能になる return YES; } # No.02 -(void)textFieldDidBeginEditing:(UITextField*)textField { // 編集開始時に呼ばれるメソッド // No.01がYESを返したあとに呼ばれる } # No.03 -(BOOL)textFieldShouldEndEditing:(UITextField*)textField { // 編集終了時に呼ばれるメソッド // YESを返した場合は編集が終了し、 // NO を返した場合は編集が終了しない return YES; } # No.04 -(void)textFieldDidEndEditing:(UITextField*)textField { // 編集終了時に呼ばれるメソッド // No.03がYESを返したあとに呼ばれる } # No.05 -(BOOL)textFieldShouldReturn:(UITextField*)textField { // Retunキー(右下のボタン)を押した時に呼ばれるメソッド // YESを返した場合は編集が終了し、 // NO を返した場合は編集が終了しない return YES; } # No.06 -(BOOL)textFieldShouldClear:(UITextField*)textField { // 入力フィールド右端のクリアボタンを押した時に呼ばれるメソッド // YESを返した場合は入力情報がクリアされ、 // NO を返した場合は入力情報がクリアされない // ※対象オブジェクトのパラメータ[clearButtonMode]を // [UITextFieldViewModeNever]以外に設定しなければ // クリアボタンは表示されない return YES; }
解説
コメントでいろいろ書いたので
たいして解説することもないですが、
すべてのデリゲートメソッドを提要した場合に
呼ばれる順序は下記の通りです。
《編集開始時》
No.01 => No.02
《編集終了時》
No.03 => No.04