展会信息港展会大全

Android文本输入框(EditText)切换密码的显示与隐藏
来源:互联网   发布日期:2016-01-06 19:14:28   浏览:4286次  

导读:MainActivity如下: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.Pass...

MainActivity如下: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.PasswordTransformationMethod;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import android.widget.EditText;

/**

* Demo描述:

* 文本输入框(EditText)切换密码的显示与隐藏

*

* 参考资料:

* 1 http://developer.android.com/reference/android/text/method/HideReturnsTransformationMethod.html

* 2 http://developer.android.com/reference/android/text/method/PasswordTransformationMethod.html

* 3 http://blog.csdn.net/dawanganban/article/details/23374187

*Thank you very much

*/

public class MainActivity extends Activity {

private Button mSwitchButton;

private EditText mPasswordEditText;

private boolean isHidden=true;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

init();

}

private void init(){

mSwitchButton=(Button) findViewById(R.id.button);

mPasswordEditText=(EditText) findViewById(R.id.editText);

mSwitchButton.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

if (isHidden) {

//设置EditText文本为可见的

mPasswordEditText.setTransformationMethod(HideReturnsTransformationMethod.getInstance());

} else {

//设置EditText文本为隐藏的

mPasswordEditText.setTransformationMethod(PasswordTransformationMethod.getInstance());

}

isHidden = !isHidden;

mPasswordEditText.postInvalidate();

//切换后将EditText光标置于末尾

CharSequence charSequence = mPasswordEditText.getText();

if (charSequence instanceof Spannable) {

Spannable spanText = (Spannable) charSequence;

Selection.setSelection(spanText, charSequence.length());

}

}

});

}

}

main.xml如下:

赞助本站

人工智能实验室

相关热词: android开发

AiLab云推荐
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港