密码可见性切换没有文本输入布局的android

时间:2019-06-22 12:26:22

标签: android

我在下面的xml文件中有2个编辑文本,我手动尝试了来自drawable的图像,但是没有运气,该怎么办?

顺便说一句,我正在使用最新的androidX库。

textInputLayout没问题,但是我的视图正在改变,并且无法解决。

如果有人能做到这一点,我将不胜感激。

代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="?attr/backgroundcolor"
    android:orientation="vertical"
    tools:context="com.tekitsolutions.remindme.Activity.CreatePasswordActivity">

    <com.google.android.material.appbar.AppBarLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="?attr/toolbarcolor">

        <androidx.appcompat.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="?attr/toolbarcolor"
            android:minHeight="?attr/actionBarSize"
            app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
            app:title="@string/title_add_reminder" />
    </com.google.android.material.appbar.AppBarLayout>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="?attr/backgroundcolor"
        android:gravity="center"
        android:orientation="vertical">

        <ScrollView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@id/toolbar"
            android:background="?attr/backgroundcolor">

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical"
                android:padding="15dp">

                <LinearLayout
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_gravity="center"
                    android:layout_marginBottom="22dp"
                    android:gravity="center"
                    android:orientation="horizontal">

                    <androidx.cardview.widget.CardView
                        android:id="@+id/card_lock"
                        android:layout_width="80dp"
                        android:layout_height="80dp"
                        android:layout_marginRight="15dp"
                        android:elevation="12dp"
                        android:innerRadius="0dp"
                        android:shape="ring"
                        android:thicknessRatio="1.9"
                        app:cardBackgroundColor="?attr/backgroundcolor"
                        app:cardCornerRadius="40dp">

                        <ImageView
                            android:id="@+id/iv_lock"
                            android:layout_width="match_parent"
                            android:layout_height="50dp"
                            android:layout_alignParentTop="true"
                            android:layout_centerHorizontal="true"
                            android:layout_gravity="center"
                            android:gravity="center"
                            android:tint="?attr/iconcolor"
                            app:srcCompat="@drawable/ic_lock_black_24dp"></ImageView>
                    </androidx.cardview.widget.CardView>

                    <androidx.cardview.widget.CardView
                        android:id="@+id/card_success"
                        android:layout_width="80dp"
                        android:layout_height="80dp"
                        android:layout_marginRight="15dp"
                        android:elevation="12dp"
                        android:innerRadius="0dp"
                        android:shape="ring"
                        android:thicknessRatio="1.9"
                        android:visibility="gone"
                        app:cardBackgroundColor="?attr/backgroundcolor"
                        app:cardCornerRadius="40dp">

                        <ImageView
                            android:id="@+id/iv_success"
                            android:layout_width="match_parent"
                            android:layout_height="50dp"
                            android:layout_alignParentTop="true"
                            android:layout_centerHorizontal="true"
                            android:layout_gravity="center"
                            android:gravity="center"
                            android:tint="?attr/iconcolor"
                            app:srcCompat="@drawable/ic_check_black_24dp"></ImageView>
                    </androidx.cardview.widget.CardView>
                </LinearLayout>

                <RelativeLayout
                    android:id="@+id/layout_pwd"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginBottom="16dp"
                    android:background="@drawable/bg_card_layout_details"
                    android:padding="8dp"
                    android:visibility="gone">

                    <ImageView
                        android:id="@+id/image_old"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_alignParentLeft="true"
                        android:layout_marginRight="8dp"
                        android:tint="?attr/iconcolor"
                        app:srcCompat="@drawable/ic_lock_outline_black_24dp" />

                    <EditText
                        android:id="@+id/old_pwd"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:layout_alignParentRight="true"
                        android:layout_toRightOf="@id/image_old"
                        android:background="@android:color/transparent"
                        android:hint="@string/create_your_4_digit_passcode"
                        android:imeOptions="actionNext"
                        android:inputType="numberPassword"
                        android:maxLength="4"
                        android:textAllCaps="true"
                        android:textColor="?attr/textcolor"
                        android:textSize="16sp" />
                </RelativeLayout>

                <RelativeLayout
                    android:id="@+id/layout_alias"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:background="@drawable/bg_card_layout_details"
                    android:padding="8dp">

                    <ImageView
                        android:id="@+id/iv_mobile_no"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_alignParentLeft="true"
                        android:layout_marginRight="8dp"
                        android:tint="?attr/iconcolor"
                        app:srcCompat="@drawable/ic_lock_outline_black_24dp" />

                    <EditText
                        android:id="@+id/etCreatePassword"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:layout_alignParentRight="true"
                        android:layout_toRightOf="@id/iv_mobile_no"
                        android:background="@android:color/transparent"
                        android:hint="@string/create_your_4_digit_passcode"
                        android:imeOptions="actionNext"
                        android:inputType="numberPassword"
                        android:maxLength="4"
                        android:textAllCaps="true"
                        android:textColor="?attr/textcolor"
                        android:textSize="16sp" />
                </RelativeLayout>

                <!--<include
                    android:id="@+id/tv_error_passcode"
                    layout="@layout/row_error_textview2" />-->

                <TextView
                    android:id="@+id/tv_error_passcode"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="16dp"
                    android:orientation="vertical"
                    android:textColor="@color/colorRed"
                    android:visibility="gone"></TextView>


                <RelativeLayout
                    android:id="@+id/layout_url_link"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginTop="16dp"
                    android:background="@drawable/bg_card_layout_details"
                    android:padding="8dp">

                    <ImageView
                        android:id="@+id/iv_url_link"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_alignParentLeft="true"
                        android:layout_marginRight="8dp"
                        android:tint="?attr/iconcolor"
                        app:srcCompat="@drawable/ic_lock_outline_black_24dp" />

                    <EditText
                        android:id="@+id/etConfirmPassword"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:layout_alignParentRight="true"
                        android:layout_toRightOf="@id/iv_url_link"
                        android:background="@android:color/transparent"
                        android:hint="@string/confirm_pass"
                        android:imeOptions="actionDone"
                        android:inputType="numberPassword"
                        android:maxLength="4"
                        android:textColor="?attr/textcolor"
                        android:textSize="16sp" />
                </RelativeLayout>

                <!--    <include
                        android:id="@+id/tv_error_confm_passcode"
                        layout="@layout/row_error_textview2" />-->

                <TextView
                    android:id="@+id/tv_error_confm_passcode"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginLeft="16dp"
                    android:orientation="vertical"
                    android:textColor="@color/colorRed"
                    android:visibility="gone"></TextView>


                <Button
                    android:id="@+id/btnConfirm"
                    android:layout_width="match_parent"
                    android:layout_height="40dp"
                    android:layout_marginTop="16dp"
                    android:background="@drawable/bg_btn_color"
                    android:imeOptions="actionDone"
                    android:text="@string/button_confirm"
                    android:textColor="@color/colorWhite" />


            </LinearLayout>
        </ScrollView>
    </LinearLayout>


</LinearLayout>

1 个答案:

答案 0 :(得分:0)

在您的current_user中,使用以下代码设置自定义EditText图标。

drawable

现在,您必须将 <EditText android:id="@+id/old_pwd" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:layout_toRightOf="@id/image_old" android:background="@android:color/transparent" android:hint="@string/create_your_4_digit_passcode" android:imeOptions="actionNext" android:inputType="numberPassword" android:drawableRight="@mipmap/icn_eye" android:maxLength="4" android:textAllCaps="true" android:textColor="?attr/textcolor" android:textSize="16sp" /> 的监听器设置为touch

EditText