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