2011-01-31 21 views
1

firstResponderresignにするにはどうすればよいですか?私はTextFieldsの束を持ってUITableViewを持っています。そして、常にアクティブなのはわかりません。私は配列内のすべてのセルへのポインタを格納し、それを繰り返し、すべてのセルにresignFirstResponderを伝えることを考えましたが、より簡単な方法があると確信しています。たぶん[CurrentFirstResponder resignFirstResponder]のようなものでしょうか?私はいくつかの助けをいただければ幸いですUITextFieldに抹消するように教えてください

、ファビアン

EDIT:私は、ユーザーのタップが行われたときに、キーボードを却下する必要はありません。それはプログラム的に却下されるべきです。私はUITextFieldがいつでもアクティブであるかどうかわからないので、現在FirstResponderresignFirstResponderと呼んでいるものを探しています。

あなたが編集可能にテキストフィールドにたくない場合は、私は次のような方法

- (void)textFieldDidBeginEditing:(UITextField *)textField 
    { 
//This for to resign on begin editing 
    [textField resignFirstResponder]; 
    } 

- (void)textFieldDidEndEditing:(UITextField *)textField 
    { 
//This for to resign on end editing 
    [textField resignFirstResponder]; 
    } 

で、その後

textField.delegate=self; 

、UITextFieldのに

割り当てデリゲート、これはあなたの問題を解決することを願っています

答えて

3

でそれを使用します。

UIView * myParentViewView;//view containing one or more editable UI controls 
[myParentViewView endEditing:YES]; 
+0

これはまだ間に合いました:)問題は、私の 'UITextField'はカスタム' UITableViewCell'に囲まれていましたが、 ' - (void)textFieldDidBeginEditing:(UITextField *)tf'を送る新しいデリゲートメソッドを追加しました。代議員。そこで私はインスタンス変数を持っています... – fabian789

1

textField.editing=NO; 

あなたのテキストをdistingushに設定するタグフィールド

0

単にUITextFieldDelegate(reference)を使用してください。 - (BOOL)textFieldShouldReturn:(UITextField *)textFieldが呼び出されるたびに、[textField resignFirstResponder]を実行します。このメソッドは常に現在アクティブなテキストフィールドで呼び出されるためです。あなたはまだあなたのテキストフィールドを区別する必要がある場合は 、あなたが積極的にUITextFieldDelegate ProtocoltextFieldDidBeginEditing:を使用して編集していますUITextfeildへの参照を保つことができるか、あなたの親ビューでこれを行うことができ、タグを設定してみてくださいとif(textfield.tag == self.mytextfield.tag) {...}

+0

私の質問が更新されました。 – fabian789

関連する問題