Android:EditText密码的显示和隐藏

2022-07-28 12:57:16

1. 结果

在这里插入图片描述
在这里插入图片描述

2.具体操作如图

代码是图中指向的一个小眼睛的点击事件
在这里插入图片描述
2.1isChanged 初始化

boolean isChanged = false;

2.2内部点击事件
invisible_default_icon这个是默认的隐藏资源文件,就是眼睛闭起来的样式,invisible_highlight_icon这个是眼睛睁开的样式

      show_hidden.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (v == show_hidden) {
                    if (isChanged) {
                        show_hidden.setImageDrawable(getResources().getDrawable(R.mipmap.invisible_default_icon));
                       // 隐藏密码
                        et_password.setTransformationMethod(PasswordTransformationMethod.getInstance());
                    } else {
                        show_hidden.setImageDrawable(getResources().getDrawable(R.mipmap.invisible_highlight_icon));
                        //显示密码
                        et_password.setTransformationMethod(HideReturnsTransformationMethod.getInstance());
                    }
                    isChanged = !isChanged;
                }
            }
        });

2.3布局文件
invisible_default_iconpassword_icon是我自己的图片,你需要自己替换成自己的

android:inputType="textPassword"这一行是默认显示小圆点

   <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginLeft="30dp"
        android:layout_marginTop="30dp"
        android:layout_marginRight="30dp"
        android:orientation="horizontal">


        <ImageView
            android:layout_width="40dp"
            android:layout_height="40dp"
            android:padding="7dp"
            android:src="@mipmap/password_icon"></ImageView>

        <EditText
            android:id="@+id/et_password"
            android:inputType="textPassword"
            android:layout_width="0dp"
            android:layout_height="40dp"
            android:layout_marginLeft="10dp"
            android:layout_weight="1"></EditText>

        <ImageView
            android:id="@+id/show_hidden"
            android:layout_width="40dp"
            android:layout_height="40dp"
            android:src="@mipmap/invisible_default_icon"></ImageView>
    </LinearLayout>
  • 作者:Wenlong Yang
  • 原文链接:https://blog.csdn.net/title71/article/details/113103447
    更新时间:2022-07-28 12:57:16