简体   繁体   中英

Android TextInputEditText, inputType = textPassword, I can't see dots

I use TextInputEditText in my activity. I set inputType 'textPassword'. But I can not see dots to protect the password I entered.

This is my view source codes.

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <ImageView
        android:id="@+id/email_login_background_img"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:scaleType="centerCrop"
        android:src="@drawable/intro_background" />

    <ImageView
        android:id="@+id/email_login_logo_img"
        android:layout_width="240dp"
        android:layout_height="32dp"
        android:layout_centerHorizontal="true"
        android:layout_marginBottom="16dp"
        android:layout_marginTop="24dp"
        android:scaleType="centerCrop"
        android:src="@drawable/rock_bottom_logo" />

    <android.support.design.widget.TextInputLayout
        android:id="@+id/email_login_email_layout"
        style="@style/EmailTextInputEditText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/email_login_logo_img"
        android:layout_marginBottom="8dp"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp">

        <android.support.design.widget.TextInputEditText
            android:id="@+id/email_login_email_txt"
            style="@style/EmailTextInputEditText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="@string/email_login_email_txt"
            android:inputType="textEmailAddress" />
    </android.support.design.widget.TextInputLayout>

    <android.support.design.widget.TextInputLayout
        android:id="@+id/email_login_password_layout"
        style="@style/EmailTextInputEditText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/email_login_email_layout"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp"
        app:passwordToggleEnabled="true"
        app:passwordToggleTint="@color/colorAccent">

        <android.support.design.widget.TextInputEditText
            android:id="@+id/email_login_password_txt"
            style="@style/EmailTextInputEditText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="@string/email_login_password_txt"
            android:inputType="textPassword" />
    </android.support.design.widget.TextInputLayout>


    <Button
        android:id="@+id/email_login_sign_in_btn"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/email_login_password_layout"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp"
        android:layout_marginTop="8dp"
        android:background="@drawable/button_custom_login"
        android:text="@string/email_login_sign_in_txt"
        android:textColor="@color/white" />

    <TextView
        android:id="@+id/email_login_sign_up_btn"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/email_login_sign_in_btn"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp"
        android:layout_marginTop="48dp"
        android:gravity="center"
        android:text="@string/email_login_sign_up_txt"
        android:textColor="@color/white"
        android:textSize="16sp" />

    <TextView
        android:id="@+id/email_login_password_find_btn"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/email_login_sign_up_btn"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp"
        android:layout_marginTop="48dp"
        android:gravity="center"
        android:text="@string/email_login_sign_up_txt"
        android:textColor="@color/white"
        android:textSize="16sp" />

</RelativeLayout>

And this is screenshot that shows my problem.

在此处输入图片说明

It may not look good, but the dot is definitely not visible at all.

And this is style that is applied to my activity.

<style name="AppTheme2" parent="Theme.AppCompat.Light.DarkActionBar">
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>
        <item name="colorControlActivated">@color/colorPrimary</item>
        <item name="colorControlNormal">@color/colorDarkerGray</item>
    </style>

How can i solve this problem. I need your help. Thank you.

Additionally, This is my EmailTextInputEditText Style.

<style name="EmailTextInputEditText" parent="TextAppearance.AppCompat">
    <item name="android:textColor">@color/white</item>
    <item name="android:textColorHint">@color/white</item>
    <item name="colorControlNormal">#a90000</item>
    <item name="android:textCheckMark">@color/white</item>
</style>

Additionally, This is my color.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <color name="colorPrimary">@android:color/holo_red_dark</color>
    <color name="colorPrimaryDark">#c20000</color>
    <color name="colorPrimaryLight">#ea0000</color>
    <color name="colorAccent">@android:color/white</color>
    <color name="colorBlack">@android:color/black</color>
    <color name="colorVideoTxt">#001020</color>
    <color name="colorVideoTransparent">#92dadada</color>
    <color name="colorDarkerGray">@android:color/darker_gray</color>
    <color name="white">@android:color/white</color>
    <color name="cardBackground">#73e2e2e2</color>
    <color name="transparent">#00ffffff</color>

</resources>

Try this -

<android.support.design.widget.TextInputLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginBottom="10dp"
    android:gravity="center"
    android:backgroundTint="@color/background"
    android:textColorHint="@color/background">

    <EditText
        android:id="@+id/edtxtUsrID"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="Email ID"
        android:inputType="text"
        android:maxLength="30"
        android:backgroundTint="@color/view_grey"
        android:maxLines="1"/>

</android.support.design.widget.TextInputLayout>

<android.support.design.widget.TextInputLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginBottom="10dp"
    android:layout_marginTop="5dp"
    android:backgroundTint="@color/view_grey"
    android:textColorHint="@color/view_grey">

    <EditText
        android:id="@+id/edtxtUsrPswrd"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:hint="Password"
        android:inputType="textPassword"
        android:maxLength="30"
        android:maxLines="1"
        android:backgroundTint="@color/view_grey"
        android:textColorHint="@color/view_grey" />

</android.support.design.widget.TextInputLayout>

@Junburg You added - style="@style/EmailTextInputEditText" in TextInputEditText remove that line from TextInputEditText ,see below screenshot 在此处输入图片说明

The issue with your theme try the below code

Try this

    <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <ImageView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:scaleType="centerCrop"
        android:src="@drawable/goku" />


    <ImageView
        android:id="@+id/email_login_logo_img"
        android:layout_width="240dp"
        android:layout_height="32dp"
        android:layout_centerHorizontal="true"
        android:layout_marginBottom="16dp"
        android:layout_marginTop="24dp"
        android:scaleType="centerCrop"
        android:src="@color/colorPrimary" />

    <android.support.design.widget.TextInputLayout
        android:id="@+id/email_login_email_layout"
        style="@style/EmailTextInputEditText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/email_login_logo_img"
        android:layout_marginBottom="8dp"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp">

        <android.support.design.widget.TextInputEditText
            android:id="@+id/email_login_email_txt"
            style="@style/EmailTextInputEditText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="email_login_email_txt"
            android:inputType="textEmailAddress" />
    </android.support.design.widget.TextInputLayout>

    <android.support.design.widget.TextInputLayout
        android:id="@+id/email_login_password_layout"
        style="@style/EmailTextInputEditText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/email_login_email_layout"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp"
        app:passwordToggleEnabled="true"
        app:passwordToggleTint="@color/colorAccent">

        <android.support.design.widget.TextInputEditText
            android:id="@+id/email_login_password_txt"
            style="@style/EmailTextInputEditText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="email_login_password_txt"
            android:text="123456"
            android:inputType="textPassword" />
    </android.support.design.widget.TextInputLayout>


    <Button
        android:id="@+id/email_login_sign_in_btn"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/email_login_password_layout"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp"
        android:layout_marginTop="8dp"
        android:background="@color/colorPrimary"
        android:text="email_login_sign_in_txt"
        android:textColor="#FFFFFF" />

    <TextView
        android:id="@+id/email_login_sign_up_btn"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/email_login_sign_in_btn"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp"
        android:layout_marginTop="48dp"
        android:gravity="center"
        android:text="email_login_sign_up_txt"
        android:textColor="#FFFFFF"
        android:textSize="16sp" />

    <TextView
        android:id="@+id/email_login_password_find_btn"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/email_login_sign_up_btn"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp"
        android:layout_marginTop="48dp"
        android:gravity="center"
        android:text="email_login_sign_up_txt"
        android:textColor="#FFFFFF"
        android:textSize="16sp" />

</RelativeLayout>

THEMES

 <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>
        <item name="colorControlActivated">@color/colorPrimary</item>
        <item name="colorControlNormal">#787777</item>
    </style>

    <style name="EmailTextInputEditText" parent="TextAppearance.AppCompat">
        <item name="android:textColor">@color/white</item>
        <item name="android:textColorHint">@color/white</item>
        <item name="colorControlNormal">#a90000</item>
        <item name="android:textCheckMark">@color/white</item>
    </style>

RESULT USING WITH IMAGEVIEW

在此处输入图片说明

NOTE : also no need of extra imageView remove it and just set background to your RelativeLayout

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/goku">


    <ImageView
        android:id="@+id/email_login_logo_img"
        android:layout_width="240dp"
        android:layout_height="32dp"
        android:layout_centerHorizontal="true"
        android:layout_marginBottom="16dp"
        android:layout_marginTop="24dp"
        android:scaleType="centerCrop"
        android:src="@color/colorPrimary" />

    <android.support.design.widget.TextInputLayout
        android:id="@+id/email_login_email_layout"
        style="@style/EmailTextInputEditText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/email_login_logo_img"
        android:layout_marginBottom="8dp"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp">

        <android.support.design.widget.TextInputEditText
            android:id="@+id/email_login_email_txt"
            style="@style/EmailTextInputEditText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="email_login_email_txt"
            android:inputType="textEmailAddress" />
    </android.support.design.widget.TextInputLayout>

    <android.support.design.widget.TextInputLayout
        android:id="@+id/email_login_password_layout"
        style="@style/EmailTextInputEditText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/email_login_email_layout"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp"
        app:passwordToggleEnabled="true"
        app:passwordToggleTint="@color/colorAccent">

        <android.support.design.widget.TextInputEditText
            android:id="@+id/email_login_password_txt"
            style="@style/EmailTextInputEditText"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="email_login_password_txt"
            android:text="123456"
            android:inputType="textPassword" />
    </android.support.design.widget.TextInputLayout>


    <Button
        android:id="@+id/email_login_sign_in_btn"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/email_login_password_layout"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp"
        android:layout_marginTop="8dp"
        android:background="@color/colorPrimary"
        android:text="email_login_sign_in_txt"
        android:textColor="#FFFFFF" />

    <TextView
        android:id="@+id/email_login_sign_up_btn"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/email_login_sign_in_btn"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp"
        android:layout_marginTop="48dp"
        android:gravity="center"
        android:text="email_login_sign_up_txt"
        android:textColor="#FFFFFF"
        android:textSize="16sp" />

    <TextView
        android:id="@+id/email_login_password_find_btn"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/email_login_sign_up_btn"
        android:layout_marginLeft="8dp"
        android:layout_marginRight="8dp"
        android:layout_marginTop="48dp"
        android:gravity="center"
        android:text="email_login_sign_up_txt"
        android:textColor="#FFFFFF"
        android:textSize="16sp" />

</RelativeLayout>

RESULT USING WITHOUT IMAGEVIEW

在此处输入图片说明

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM