あひるの勉強部屋

つらつらつら~と不定期にカキコするブログ

現在のTextFieldから次のTextFieldに自動フォーカスするやつ

備忘録

 

複数の入力項目があるときに、いちいち手動でフォーカスするのは面倒なので、自動フォーカスして欲しい。

textFieldShouldReturnでキーボードのreturnキーを押した際の挙動を制御出来るらしいのでソレを使ってみた。

ここでは例として入力項目がsampleTextField1とsampleTextField2の2カ所あるとする。 sampleTextField1でreturnを押すと、sampleTextField2に自動的にフォーカスするようにする。

- (BOOL)textFieldShouldReturn:(UITextField *)
    {
        if (textField == self.sampleTextField2) {
            [textField resignFirstResponder];
        }
        else if (textField == self.sampleTextField1) {
            [self.sampleTextField2 becomeFirstResponder];
        {
        return YES;
    }

resignFirstResponderはキーボードを閉じる。

becomeFirstResponderでフォーカスを当てます。

 

まとめると、sampleTextField2の時はキーボードを閉じる(それ以上項目がないのでフォーカスを外す)。

sampleTextField1の時はフォーカスをsampleTextField2へ向ける。

こうやって書いてしまうと簡単に見えますが一週間も悩んでましたorz

覚え書きとして日記に残します。