登录界面显示密码的实现
2015-01-27 20:06
211 查看
常见的app登录页面, 会有选项 “显示密码”,当点击时显示或隐藏 密码输入框中的内容,这个功能如何实现呢,用下面的方式很简单的实现:
1. HideReturnsTransformationMethod 和 PasswordTransformationMethod
((CheckBox) findViewById(R.id.check)).setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked){
editText.setTransformationMethod(HideReturnsTransformationMethod.getInstance());
}else {
editText.setTransformationMethod(PasswordTransformationMethod.getInstance());
}
}
});
注:其中 R.id.check 是 “显示密码” 的Checkbox , editText 是密码输入框 EditText
2. InputType.TYPE_TEXT_VARITION_VISIBLE_PASSWORD 和 InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD
((CheckBox) findViewById(R.id.check2)).setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked){
editText.setInputType(InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);
}else {
editText.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);
}
}
});
注: 描述 同 1
其中发现第一个方法较第二个方法更好,因为第二个方法会发现 editText 的内容会挤在一起。丑丑的。。
看第三张图就知道了。
所以建议用第一种方式 == , 下班回家了。
1. HideReturnsTransformationMethod 和 PasswordTransformationMethod
((CheckBox) findViewById(R.id.check)).setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked){
editText.setTransformationMethod(HideReturnsTransformationMethod.getInstance());
}else {
editText.setTransformationMethod(PasswordTransformationMethod.getInstance());
}
}
});
注:其中 R.id.check 是 “显示密码” 的Checkbox , editText 是密码输入框 EditText
2. InputType.TYPE_TEXT_VARITION_VISIBLE_PASSWORD 和 InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD
((CheckBox) findViewById(R.id.check2)).setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
if(isChecked){
editText.setInputType(InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);
}else {
editText.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);
}
}
});
注: 描述 同 1
其中发现第一个方法较第二个方法更好,因为第二个方法会发现 editText 的内容会挤在一起。丑丑的。。
看第三张图就知道了。
所以建议用第一种方式 == , 下班回家了。
相关文章推荐
- 编写一个jsp程序,实现用户登录,当用户输入的用户或密码错误时,将页面重定向到错误提示页,并在该页面显示30秒后 自动回到用户登录界面
- 编写登录接口,输入用户名密码,认证成功后显示欢迎界面,输错三次后锁定(1.超过三次直接锁定待实现 2.锁定后只能尝试一次)
- Windows XP中如何实现在登录界面上不显示过多用户名
- Android 记住密码和自动登录界面的实现(SharedPreferences 的用法) .
- Android 记住密码和自动登录界面的实现(SharedPreferences 的用法)
- Android登录界面,记住密码的实现
- Android实现登录界面记住用户名与密码
- 在登录页面设计中输入密码错误后弹框提示并返回到登录界面的代码实现
- android中实现记住登录密码的界面
- Android 记住密码和自动登录界面的实现(SharedPreferences 的用法)
- Android——SharedPreferences实现登录界面的记住密码和自动登录功能
- 登录界面保存密码实现
- Android登录界面账号密码输入框选中时,选中背景变换的实现方法
- 在登录页面设计中输入密码错误后弹框提示并返回到登录界面的代码实现
- Android 记住密码和自动登录界面的实现(SharedPreferences 的用法)
- Android 记住密码和自动登录界面的实现(SharedPreferences 的用法)
- Android 记住密码和自动登录界面的实现
- Android——SharedPreferences实现登录界面的记住密码和自动登录功能
- 大众化的登录界面的一种完美简单的实现方法(验证码+自带一键删除+用户名密码为空时抖动提示)
- Android 记住密码和自动登录界面的实现(SharedPreferences 的用法)