2017-03-12 12 views
7

Czy można ustawić błąd w układzie wprowadzania tekstu bez wyświetlania komunikatu o błędzie (robię to już w innym miejscu) ?.Błąd zestawu TextInputLayout bez komunikatu?

textinputlayout.setError(""); 

nie będzie działać niestety.

To, czego potrzebuję, to textInputLayout, aby zmienić kolor linii na czerwony, ale muszę to zrobić programowo. Dziękujemy

+0

Sprawdź [http://stackoverflow.com/questions/40838069/programmatically-changing-underline-color-of-edittext] – RoHiT

+0

dziękuję, ale już to wypróbowałem, jest przeznaczony do pracy tylko przy edycji tekstu bez tekstu układ wprowadzania – oxcened

Odpowiedz

0

Możesz ukryć układ z błędem. Tak:

textinputlayout.setError(""); 

if (textinputlayout.getChildCount() == 2) { 

     textinputlayout.getChildAt(1).setVisibility(View.GONE); 
} 
0

nadzieję, że nie jest zbyt późno, ale kod za setError jest:

if (!mErrorEnabled) { 
    if (TextUtils.isEmpty(error)) { 
     // If error isn't enabled, and the error is empty, just return 
     return; 
    } 
} 

oznacza to proste obejście będzie:

textinputlayout.setError(" ");

ponieważ przechodzi niezbyt dobrze przemyślany przypadek obsługi pustego żądania komunikatu o błędzie.

Powiązane problemy