何らかの理由により、resignFirstResponderが機能していません。なぜわからないのですか?私はそれをtextFieldDidEndEditingから呼び出そうとしましたが、何も起こりません。 NIBが使用されており、それぞれの代理人がファイルの所有者を指しています。iPhone SDK:resignFirstResponderが機能しない
キーボードを閉じるには何が必要ですか?
ありがとうございました。
何らかの理由により、resignFirstResponderが機能していません。なぜわからないのですか?私はそれをtextFieldDidEndEditingから呼び出そうとしましたが、何も起こりません。 NIBが使用されており、それぞれの代理人がファイルの所有者を指しています。iPhone SDK:resignFirstResponderが機能しない
キーボードを閉じるには何が必要ですか?
ありがとうございました。
テキストフィールドの代理人を設定してください。
myTextField.delegTe = self;
そして、あなたはあなたのヘッダーで使用されています
<UITextFieldDelegate>
EDIT:
試してみてください。
if(textField == myTextField){
[textField resignFirstResponder];
}
デリゲートは、IBとviewDidLoadの両方で既に設定されています。また、ビューコントローラは既にUITextFieldDelegateを採用しています。それでもキーボードは却下されません。 –
回答を別の解決策で更新しました。 – WrightsCS
が-textFieldDidEndEditing
を使用しないでください。これは、テキストフィールドがfirstResponderステータスを終了した後に呼び出されます。これは、あなたがそれをフックとして使用しようとしているものです。馬の前にカート、問題の鶏と卵の種類。
リターンキーが押されたときにトリガーを得るには、-textFieldShouldReturn
を使用してください(また、return YES;
を覚えておいてください)。また、ビューの要素の後ろにクリアなカスタムボタンを浮かべ、すべてのテキストを通過する "バックグラウンドタップ"フィールドを表示し、多くの最初の応答者を辞任します。
実際には、テキストフィールドがまったく編集を開始しないように、NOを返す必要があります。そうであれば、最初のレスポンダが設定され、キーボードが再びポップアップします。
使用しているコードを投稿できますか? –
- (void)textFieldDidEndEditing:(UITextField *)textField { [textField resignFirstResponder]; } @interface MultiSalesViewController:ScrollingViewController –