0
上のタップは、私はアプリを実行すると、私はTextInputLayout中にエラーが発生しました(真)setErrorEnabled呼んでも再び示してはいけない
private boolean validateName() {
if (edtName.getText().toString().trim().isEmpty()) {
inputLayoutName.setErrorEnabled(true);
inputLayoutName.setError("Enter name");
return false;
} else {
inputLayoutName.setErrorEnabled(false);
}
return true;
}
を使用し、ボタンを提出するとき、私は有効な名前についてTextInputLayout
<android.support.design.widget.TextInputLayout
android:id="@+id/input_layout_name"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<EditText
android:id="@+id/edt_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/title_what_should_we_call_you" />
</android.support.design.widget.TextInputLayout>
を持っています、名前を付けて値を入力せずに[送信]をタップすると、エラーが表示されます(正しい)。
は、その後、私は名前にいくつかの値を入力してください - >タップ送信 - >エラー非表示(正しい)
をしかし、その後、私はすべての名前をクリアする - >タップ提出 - それが起こったのはなぜ>エラーが
を示すいけませんか?どんな助けや提案も大歓迎です。
私は、エラーメッセージのビューはまだ見えない
エラーの有効化/無効化が本当に必要ですか? – Shaishav
@Shaishav setErrorEnabled(false)を使用しない場合は、エラーメッセージをnullに設定するだけで、エラーメッセージの表示はまだ表示されません。 –
Uh ...入力に問題がある場合にのみ機能を示すエラーを使用します。すべてがうまくいけば、単に 'setError()'を呼び出さないでください。なぜあなたは 'setError(null)'を呼び出す必要がありますか? – Shaishav