Remove the error indicator from a previously-validated EditText widget

AndroidAndroid Edittext

Android Problem Overview


I am using an EditText widget, and I am validating it with the setError() method of EditText and it validates correctly.

But I have an button in the same screen that redirects to another activity. And when I press back button and come back to the screen the validation still appears.

So on the activity OnPause event I want to remove the validation of the EditText. How is it possible.

Android Solutions


Solution 1 - Android

protected void onPause () {
    TextView textView = ...; // fetch it as appropriate
    textView.setError(null);
}

Because as mentioned in the documentation:

> If the error is null, the error message and icon will be cleared.

Solution 2 - Android

In Kotlin:

editText.error = null

Kotlin Extension Function:

To make it more readable, you could add this extension function

fun EditText.clearError() {
    error = null
}

In Java:

editText.setError(null);

Solution 3 - Android

You can also do it using following :

protected void onPause () {    
    mEditText.setError(null);//removes error
    mEditText.clearFocus();    //clear focus from edittext
}

Solution 4 - Android

just put .setError(null) at the end of the EditText.

mEditText.setError(null);

Solution 5 - Android

In kotlin you can simply acces the property using property access syntax wich is

protected void onPause () {
    EditText mEditText = ...; // fetch it as appropriate
    mEditText.error = null
}

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionArunView Question on Stackoverflow
Solution 1 - AndroidBoris StrandjevView Answer on Stackoverflow
Solution 2 - AndroidGiboltView Answer on Stackoverflow
Solution 3 - AndroidAj 27View Answer on Stackoverflow
Solution 4 - Androidsaigopi.meView Answer on Stackoverflow
Solution 5 - AndroidRahul RajView Answer on Stackoverflow