zoukankan      html  css  js  c++  java
  • 【Android】实现动态显示隐藏密码输入框的内容

    在设置输入密码框时,有些时候需要按钮控制输入的是“明文”或者“暗文”。

    这里提供一种Android实现动态显示隐藏密码输入框的内容的方法:

    主要是通过设置EditText的setTransformationMethod()方法来实现隐藏密码或者显示密码。


    java 文件

    package com.app;
    
    import android.os.Bundle;
    import android.app.Activity;
    import android.text.method.HideReturnsTransformationMethod;
    import android.text.method.PasswordTransformationMethod;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    import android.widget.EditText;
    /**
     * Android动态显示隐藏密码输入框的内容
     */
    public class MainActivity extends Activity {
    	private Button mBtnPassword;  
    	private EditText mEtPassword;  
    	private boolean mbDisplayFlg = false;  
    	   @Override  
    	   public void onCreate(Bundle savedInstanceState) {  
    	       super.onCreate(savedInstanceState);  
    	       setContentView(R.layout.activity_main);  
    	       mEtPassword = (EditText)findViewById(R.id.password);  
    	       mBtnPassword = (Button)findViewById(R.id.button1);  
    	       mBtnPassword.setOnClickListener(new OnClickListener() {  
    	        @Override  
    	        public void onClick(View v) {  
    	            if (!mbDisplayFlg) {  
    	                mEtPassword.setTransformationMethod(HideReturnsTransformationMethod.getInstance());  
    	            } else {  
    	                mEtPassword.setTransformationMethod(PasswordTransformationMethod.getInstance());  
    	            }  
    	            mbDisplayFlg = !mbDisplayFlg;  
    	            mEtPassword.postInvalidate();  
    	        }  
    	       });  
    	   }  
    }
    

    布局文件

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        tools:context=".MainActivity" >
    
        <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>
    
        <Button
            android:id="@+id/button1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignLeft="@+id/password"
            android:layout_below="@+id/password"
            android:layout_marginLeft="56dp"
            android:layout_marginTop="48dp"
            android:text="Button" />
    
    </RelativeLayout>
    


  • 相关阅读:
    动态联编学习:一、多态性和动态联编
    客户信用评分参考
    top、postop、scrolltop、scrollHeight、offsetHeight
    XPath 简单语法
    系统表
    彩信MO,MT的业务流程
    Short Message Peer to Peer
    解决IIS中网站按浏览没反应问题
    比较详细的win2003 IIS6.0 301重定向带参数的问题解决方法
    Fleaphp函数用法举例
  • 原文地址:https://www.cnblogs.com/suncoolcat/p/3339597.html
Copyright © 2011-2022 走看看