Android : Typeface is changed when i apply password Type on EditText

wawanopoulos picture wawanopoulos · Jun 9, 2014 · Viewed 21.7k times · Source

I use FloatLabel library (https://github.com/weddingparty/AndroidFloatLabel) to add a little animation when user begin to write something in an EditText Android.

My problem is that the typeface seems to be changed when i apply the password type to my EditText. I would like to keep the same typeface as normal. (see picture 1)

enter image description here

But when i add the following line to apply password type, the typeface of hint seems to be changed !

pass.getEditText().setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);

enter image description here

Answer

Andrew Schuster picture Andrew Schuster · Jun 9, 2014

The following might solve it for you.

pass.setTypeface(user.getTypeface());

Essentially it just passes the Typeface of your username field and passes it as the Typeface for your password field.


I found an explanation of this in the Dialogs API Guide.

Tip: By default, when you set an EditText element to use the "textPassword" input type, the font family is set to monospace, so you should change its font family to "sans-serif" so that both text fields use a matching font style.

In otherwords, a fix that can be done in XML would be as follows:

<EditText
    android:id="@+id/password"
    android:inputType="textPassword"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:fontFamily="sans-serif"
    android:hint="@string/password"/>