当前位置: 首页 > 编程笔记 >

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

白芷阳
2023-03-14
本文向大家介绍Android中EditText显示明文与密码的两种方式,包括了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_parent"
android:layout_height="match_parent"
android:orientation="vertical"
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="liu.basedemo.MainActivity">
<EditText
android:id="@+id/etUsername"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="20dp"
android:hint="请输入用户名"
android:textColor="#000000"
android:textColorHint="#55000000"
android:textSize="20sp"/>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical">
<EditText
android:id="@+id/etPassword"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="20dp"
android:hint="请输入密码"
android:inputType="textPassword"
android:textColor="#000000"
android:textColorHint="#55000000"
android:textSize="20sp"/>
<CheckBox
android:checked="false"
android:id="@+id/cbDisplayPassword"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:button="@drawable/selector_password"/>
</RelativeLayout>
</LinearLayout>
selector
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@mipmap/cb_checked" android:state_checked="true"/>
<item android:drawable="@mipmap/cb_normaled" android:state_checked="false"/>
</selector>

EditText显示明文与密码的两种方式如下所述:

第一种方式

private void initListener() {
mCbDisplayPassword.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
Log.d(TAG, "onCheckedChanged: "+isChecked);
if(isChecked){
//选择状态 显示明文--设置为可见的密码
mEtPassword.setInputType(InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);
}else {
//默认状态显示密码--设置文本 要一起写才能起作用 InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD
mEtPassword.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);
}
}
});
}

第二种方式

private void initListener() {
mCbDisplayPassword.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
Log.d(TAG, "onCheckedChanged: "+isChecked);
if(isChecked){
//选择状态 显示明文--设置为可见的密码
//mEtPassword.setInputType(InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);
/**
* 第二种
*/
mEtPassword.setTransformationMethod(HideReturnsTransformationMethod.getInstance());
}else {
//默认状态显示密码--设置文本 要一起写才能起作用 InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD
//mEtPassword.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD);
/**
* 第二种
*/
mEtPassword.setTransformationMethod(PasswordTransformationMethod.getInstance());
}
}
});
}

以上所述是小编给大家介绍的Android中EditText显示明文与密码的两种方式,希望对大家有所帮助,如果大家想了解更多内容敬请关注小牛知识库!

 类似资料:
  • 本文向大家介绍Android中实现EditText密码显示隐藏的方法,包括了Android中实现EditText密码显示隐藏的方法的使用技巧和注意事项,需要的朋友参考一下 在Google发布了support:design:23+以后我们发现有这么一个东西TextInputLayout,先看下效果图: 只要在布局中添加属性app:passwordToggleEnabled=”true”就可以实现当E

  • 本文向大家介绍Android 实现密码输入框动态明文/密文切换显示效果,包括了Android 实现密码输入框动态明文/密文切换显示效果的使用技巧和注意事项,需要的朋友参考一下 在项目中遇到需要提供给用户一个密码输入框明文/密文切换显示的需求,在网上搜索一圈都没有发现完整的实现,幸而找到了一个实现的思路。 先上效果图,看了录制屏幕gif的教程,无奈手机太旧系统版本不支持,只有上静态图了。 密码输入框

  • 问题内容: 我只想在编辑文本中显示两位小数,ofc我想在编辑文本中显示货币,但将其值限制为小数点后两位。 我已经看到了一些使用正则表达式的解决方案,但我不想这样做。我被告知Java支持一些内部库函数可以做到这一点。任何人都可以给我提示或为此提供一些有效的代码。 问候 问题答案: 您可以简单地使用 你会得到结果为

  • 本文向大家介绍js设置控件的隐藏与显示的两种方法,包括了js设置控件的隐藏与显示的两种方法的使用技巧和注意事项,需要的朋友参考一下 用JavaScript隐藏控件的方法有两种,分别是通过设置控件的style的“display”和“visibility”属性。 当style.display="block"或style.visibility="visible"时控件或见,当style.display=

  • 本文向大家介绍Hibernate中获取Session的两种方式代码示例,包括了Hibernate中获取Session的两种方式代码示例的使用技巧和注意事项,需要的朋友参考一下 Session:是应用程序与数据库之间的一个会话,是Hibernate运作的中心,持久层操作的基础.对象的生命周期/事务的管理/数据库的存取都与Session息息相关. Session对象是通过SessionFactory构

  • 本文向大家介绍java明文密码三重加密方法,包括了java明文密码三重加密方法的使用技巧和注意事项,需要的朋友参考一下 本文介绍了两种密码加密的方法,这两种很常见可以再百度随意找到。 1.摩斯密码; 说道密码加密不得不提的方法。很是经典。 首先说一下他的对照表,直接上图。 核心思想就是替换明文密码,将字符对应的替换成-与.两种符号的组合; 2、栅栏密码; 所谓栅栏密码,就是把要加密的明文分成N个一