UITextField
次のコードを使用して、1 回のクリックですべてのテキストをクリアするために使用される小さな十字ボタンを追加できます。
textField.clearButtonMode = UITextFieldViewModeWhileEditing;
も実施しUITextFieldDelegate
ました。
UINavigationBar
の変更に応じて、の右バー ボタンをアクティブ化/非アクティブ化したいと考えていUITextField
ます。ルールは簡単です。テキスト フィールドに少なくとも 1 文字ある場合はボタンを有効にし、それ以外の場合は無効にします。
UITextField
のデリゲート メソッドを実装してtextField:shouldChangeCharactersInRange:
、要件を常にチェックし、ボタンのステータスを更新しました。
今私の問題は、テキスト フィールドの小さな十字ボタンをクリックすると、メソッドtextField:shouldChangeCharactersInRange:
が呼び出されないことです。したがって、必要なアクションが欠落しています。クリアボタンのヒットイベントを特定するにはどうすればよいですか?
私が話していることを示すいくつかの写真。
初期段階: ここでは、テキスト フィールドに文字がないため、[完了] ボタンは無効になっています。
文字を入力すると、「完了」ボタンが有効になります
ここで、クリア ボタンをクリックすると、[完了] ボタンが引き続き有効になります。これは間違っています。