5

W mojej aplikacji korzystam z TextInputLayout biblioteki Support Support Library wokół wszystkich moich EditTextów, które wymagają podpowiedzi, aby efekt etykiety. Zauważyłem jednak niekorzystny efekt - umieszczenie go w polu hasła sprawi, że metoda setError zastosuje dwa wykrzykniki: jeden w środku EditText i jeden w odpowiednim miejscu, nieznacznie zakrywający "oko" (widoczność hasła) Ikona.Podwójny wykrzyknik w EditText setError, gdy jest używany w polu typu hasła

enter image description here

Dzieje się tak tylko na obszarach, które mają InputType ustawiony textPassword.

Jak mogę to naprawić?

EDIT:

XML układ

<android.support.design.widget.TextInputLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content"> 
    <EditText 
     android:id="@+id/loginEmail" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:hint="@string/hint_email" 
     android:inputType="textEmailAddress"/>    
</android.support.design.widget.TextInputLayout> 

<android.support.design.widget.TextInputLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content"> 
    <EditText 
     android:id="@+id/loginPassword" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:hint="@string/hint_password" 
     android:inputType="textPassword"/> 
</android.support.design.widget.TextInputLayout> 
+0

proszę zaksięgować kod xml. –

+0

Dodano kod układu! – fonix232

+0

http://code.tutsplus.com/tutorials/creating-a-login-screen-using-textinputlayout-- cms-24168 –

Odpowiedz

8

spróbować ustawić komunikat o błędzie tylko dla TextInputLayout i usunąć go z obiektu EditText.

+0

Dzięki! Teraz działa idealnie :) – fonix232

+0

Serdecznie zapraszamy :) –

+0

Ale to zmienia charakter wyświetlania błędów. Czy nie możemy mieć pływającej etykiety na końcu, używając ustawionego błędu dla textinputlayout? –