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>

截图:

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

(0)

相关推荐

  • Android EditText密码的隐藏和显示功能

    Android EditText密码的隐藏和显示功能 实现效果图: 实现代码: 首先在xml里创建两个控件 EditText和CheckBox 然后就很简单了 dt1=(EditText)findViewById(R.id.password); cb1=(CheckBox)findViewById(R.id.checkbox_1); cb1.setOnCheckedChangeListener(new OnCheckedChangeListener() { @Override public vo

  • Android实现动态显示或隐藏密码输入框的内容

    本文实例展示了Android实现动态显示或隐藏密码输入框内容的方法,分享给大家供大家参考之用.具体方法如下: 该功能可通过设置EditText的setTransformationMethod()方法来实现隐藏密码或者显示密码. 示例代码如下: private Button mBtnPassword; private EditText mEtPassword; private boolean mbDisplayFlg = false; /** Called when the activity is

  • Android 密码 显示与隐藏功能实例

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

  • Android实现密码隐藏和显示

    本文实例为大家分享了Android实现密码隐藏和显示的具体代码,供大家参考,具体内容如下 在Android开发中,需要密码的隐藏和显示,下面就和大家分享一下使用方法: xml代码: <LinearLayout              android:layout_width="match_parent"             android:layout_height="50dp"             android:background="

  • Android实现显示和隐藏密码功能的示例代码

    在前端中我们知道用javascript就可以可以很容易实现,那么在Android中怎么实现这个功能呢? Java代码 package com.example.test2; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.text.method.HideReturnsTransformationMethod; import android.text.method.Pa

  • Android中EditText显示明文与密码的两种方式

    效果图如下所述: 布局 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_pa

  • Android文本输入框(EditText)输入密码时显示与隐藏

    代码很简单,这里就不多废话了. 复制代码 代码如下: package cc.c; import android.app.Activity; import android.os.Bundle; import android.text.Selection; import android.text.Spannable; import android.text.method.HideReturnsTransformationMethod; import android.text.method.Passw

  • Android 登录页面的实现代码(密码显示隐藏、EditText 图标切换、限制输入长度)

    效果演示 密码显示与隐藏 方法一 if(status){ etPassword.setInputType(InputType.TYPE_CLASS_TEXT | EditorInfo.TYPE_TEXT_VARIATION_NORMAL); //显示文本 status = false; }else { etPassword.setInputType(InputType.TYPE_CLASS_TEXT | EditorInfo.TYPE_TEXT_VARIATION_PASSWORD); //隐藏

  • Android中实现密码的隐藏和显示的示例

    在Android开发中,需要密码的隐藏和显示,下面就和大家分享一下使用方法: xml代码: <LinearLayout android:layout_width="match_parent" android:layout_height="50dp" android:background="@color/white" android:orientation="horizontal" > <TextView an

  • Android中实现EditText密码显示隐藏的方法

    在Google发布了support:design:23+以后我们发现有这么一个东西TextInputLayout,先看下效果图: <android.support.design.widget.TextInputLayout android:id="@+id/pwdLayout" android:layout_width="match_parent" android:layout_height="wrap_content" app:passw

随机推荐