Android开发EditText实现密码显示隐藏

 更新时间:2022年08月02日 11:34:24   作者:伊文他妈  
这篇文章主要为大家详细介绍了Android开发EditText实现密码显示隐藏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

最近在做一个登录、注册页面,里面需要显示或隐藏密码,故做了一个简单的显示和隐藏功能。

关键类TextView.setTransformationMethod(TransformationMethod method),其中TransformationMethod 有两个子类:

  • HideReturnsTransformationMethod 隐藏回车
  • PasswordTransformationMethod 密码类型

关键代码:

@OnClick(R.id.iv_psw_eye)
    void clickPswEye() {
        int tag = Integer.parseInt(pswEyeIV.getTag().toString());
        if (tag == 1) {//显示密码
            pswEyeIV.setTag(2);
            pswEyeIV.setImageResource(R.mipmap.icon_psw_not_eye);
            passwordET.setTransformationMethod(HideReturnsTransformationMethod.getInstance());
        } else {//隐藏密码
            pswEyeIV.setTag(1);
            pswEyeIV.setImageResource(R.mipmap.icon_psw_eye);
            passwordET.setTransformationMethod(PasswordTransformationMethod.getInstance());
        }
    }

我用ImageView的Tag属性存储当前密码输入框的类型,1是密码类型,2是显示类型。布局组件关键代码如下:

<RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="45dp"
            android:layout_gravity="center"
            android:layout_marginTop="26dp"
            android:background="@drawable/bg_edit_login"
            android:paddingLeft="26dp">

            <EditText
                android:id="@+id/password_ET"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_toLeftOf="@+id/iv_psw_eye"
                android:background="@null"
                android:gravity="center_vertical"
                android:hint="请输入密码"
                android:inputType="textPassword"
                android:maxLines="1"
                android:textColor="@color/color_666666"
                android:textColorHint="@color/color_999999"
                android:textSize="13sp" />

            <ImageView
                android:id="@+id/iv_psw_eye"
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:layout_alignParentRight="true"
                android:paddingLeft="20dp"
                android:paddingRight="26dp"
                android:src="@mipmap/icon_psw_eye"
                android:tag="1" />
</RelativeLayout>

截图:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

最新评论