Android动态显示隐藏密码输入框的内容

本文介绍了一种在Android应用中实现密码输入框显示与隐藏的方法。通过使用setTransformationMethod方法结合HideReturnsTransformationMethod和PasswordTransformationMethod,可以轻松地让用户在查看密码与隐藏密码之间进行切换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

推荐安卓开发神器(里面有各种UI特效和android代码库实例)

通过设置EditText的setTransformationMethod()方法来实现隐藏密码或这显示密码,示例如下:

private Button mBtnPassword;  
private EditText mEtPassword;  
private boolean mbDisplayFlg = false;  
  
   /** Called when the activity is first created. */  
   @Override  
   public void onCreate(Bundle savedInstanceState) {  
       super.onCreate(savedInstanceState);  
       setContentView(R.layout.main);  
         
       mEtPassword = (EditText)findViewById(R.id.password);  
       mBtnPassword = (Button)findViewById(R.id.btnPassword);  
       mBtnPassword.setOnClickListener(new OnClickListener() {  
  
        @Override  
        public void onClick(View v) {  
            // TODO Auto-generated method stub  
            Log.d("AndroidTest", "mbDisplayFlg = " + mbDisplayFlg);  
            if (!mbDisplayFlg) {  
                // display password text, for example "123456"  
                mEtPassword.setTransformationMethod(HideReturnsTransformationMethod.getInstance());  
            } else {  
                // hide password, display "."  
                mEtPassword.setTransformationMethod(PasswordTransformationMethod.getInstance());  
            }  
            mbDisplayFlg = !mbDisplayFlg;  
            mEtPassword.postInvalidate();  
        }  
          
       });  
        
   }  
 


main.xml

<?xml version="1.0" encoding="utf-8"?>  
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
    android:orientation="vertical" android:layout_width="fill_parent"  
    android:layout_height="fill_parent">  
    <Button android:id="@+id/btnPassword"  
        android:layout_width="wrap_content"  
        android:layout_height="wrap_content"  
        android:text="密码" />  
    <EditText android:id="@+id/password"  
        android:layout_width="fill_parent"  
        android:layout_height="wrap_content"  
        android:password="true"  
        android:textSize="18sp"  
        android:text="123456">  
    </EditText>  
</LinearLayout>

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值