クリアボタンが押された後にUITextField呼び出しが行われるが、プロパティにはまだ古いデータがあることに気付いた人はいますか?textFieldDidEndEditingtext
ここで提供できるコードサンプルがわかりません。それが重要な場合は、ストーリーボードを使用しています。
今のところ、メイン フォームの [送信] ボタンにあるすべての編集コントロールからデータを取得する必要があります。textFieldDidEndEditingしかし、理想的には、ハンドラーでデータを収集したいと思います。
より良い回避策はありますか?
私はiOS 6を使用しています。
更新:基本的に、フォームにあるものは次のとおりです
UITextFieldUiButtonフォーム上にあります。resignFirstResponderのハンドラーを呼び出すことにより、キーボードが消えましたUITapGestureRecognizer
問題を再現する手順:
- 編集コントロールをクリックします。テキストを入力します。
- テキスト コントロールの外側をタップします。
textFieldDidEndEditingと呼ばれます。プロパティ.textに入力した値があります。すべて良い。- エディット コントロールをもう一度クリックします。
- クリアボタンをクリックします。
textFieldDidEndEditing再び呼び出されます。しかし、.text削除したばかりのプロパティにはまだ値があります。- UITextField 内でカーソルが点滅しているのを確認したら、フォームのボタンをタップします。
- キーボードが
textFieldDidEndEditing呼び出されませんでした。
明日、サンプルプロジェクトをGitHubにアップロードします。