textfielddidbegineditingからdesignfirstresponderを呼び出すことはできませんか? (iPhone)

StackOverflow https://stackoverflow.com/questions/2664388

質問

[myTextField becomeFirstResponder];
[myTextField resignFirstResonder];

私がこれをするとき -(BOOL)textFieldShouldReturn:(UITextField *)textField 、 できます。しかし、内部で同じコードを使用するとき -(void)textFieldDidBeginEditing:(UITextField *)textField 、 それは動作しません。

私はそれが呼んでいると確信しています textFieldDidBeginEditing. 。を持っています NSLog メソッド内で、それは呼ばれています。

役に立ちましたか?

解決

firstresponderステータスを辞任する前に、テキストフィールドは独自にコールバックを行います -canResignFirstResponder メソッド、戻ります NO テキストフィールドが現在編集セッションにある場合。実装できます -textFieldShouldBeginEditing: 返品する方法を委任します NO 編集セッションの開始を防ぎたい場合。

他のヒント

これは何年も前ですが、同一のものが必要であり、この答えは検索結果の一番上にあり、私はプレイしてこれを思いつきました。

[myTextField performSelector:@selector(resignFirstResponder)
                  withObject:nil
                  afterDelay:0
 ];
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top