android代码密码隐藏,android 显示密码和隐藏密码
最近项目中有这样的一个需求,就是提供给用户显示密码和隐藏密码
由于之前没有使用过,遂去寻找方案
我们都知道EditText 控件有输入的属性
这里设置类型比较多,我们可以选择,基本能满足日常开发使用,特殊需求的输入另说
ok,说到这里,我们选择一种password类型:textPassword,默认密码是不可见。
接下来就是在代码中实现显示和隐藏密码
方案1、设置输入类型
if (pwdIsVisible) {
//隐藏
pwd_et.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD);
}else {
//显示
pwd_et.setInputType(InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);
}
pwdIsVisible = !pwdIsVisible;
方案2、
设置正在被运用于TextView 上的文本的转换
if (pwdIsVisible) {
pwd_et.setTransformationMethod(HideReturnsTransformationMethod.getInstance());
}else {
pwd_et.setTransformationMethod(PasswordTransformationMethod.getInstance());
}
pwdIsVisible = !pwdIsVisible;
比较上诉两种的区别
方案1、准确来说就是原生属性提供了java方法,对应了XML属性设置,应用场景就是java代码设置的类型需和xml设置的属性一致。
方案2、转换文本的设置好处就是,不需要关心xml输入类型的设置,这里只做显示和隐藏处理,并不会改变输入类型。
如果用方案1,可能会有一个问题,当我们的需求是输入特定的字符,比如还支持!@#¥%……&* 等部分特殊字符。
java或者xml设置比较麻烦,目前知道的输入监听
java代码addTextChangedListener(),内部实现输入控制
或者xml可以直接使用android:digits=“”,但如果实现显示或者隐藏,没有这个属性,那会引发输入的字符会变所有的
例如,xml设置android:digits=“12345678!#%”
java显示或隐藏 就会调用方案1中的代码去做,然而这时候inputType是么有指定字符的类型,故不能实现
所以还是推荐使用方案2
android代码密码隐藏,android 显示密码和隐藏密码相关推荐
- Computer:成功教你如何使用一招—就能找回以前的密码(曾经保存的密码但当前显示为******号的密码)
Computer:成功教你如何使用一招-吊炸天-就能找回以前的密码(曾经保存的密码但当前显示为******号的密码)-建议收藏 目录 解决问题 解决思路 解决方法 解决问题 很久之前保存的密码,目前显 ...
- android 代码添加图片不显示,Android开发 从代码里设置Drawable图片不显示的问题
问题描述 我们从代码里获得Drawable在设置给View时会发现,图片不显示的问题.比如如下代码: Drawable drawable = getResources().getDrawable(R. ...
- android 代码加view,Android中将View添加至窗口的源码分析
本文主要内容是讲解一个视图View或者一个ViewGroup对象是如何添加至应用程序窗口中的.下文中提到的窗口可泛指我们能看到的界面,包括一个Activity呈现的界面(我们可以将之理解为应用程序窗口 ...
- android 代码签名apk,[Android]混淆代码后生成带签名的apk
Android从2.3的SDK开始,将ProGuard混淆代码的功能加入了进来. 我们可以从android sdk的tools目录下看到有一个proguard目录.说明具有了代码混淆的功能. 至于如何 ...
- android代码说明文档,android:label说明
文章目录 1. 说明 android:label 用于app 在切换activity的时候,自动更换左上角的显示 2. 代码架构 3. String.xml 字符串资源文件My Application ...
- Android代码混淆方法,Android 代码混淆零基础入门
内容提要 本篇文章主要有三个部分,让读者读完后能自己写规则混淆项目 对Android代码怎么开启混淆做一个简单的介绍. 对混淆规则做一个简单介绍: 在混淆过后Crash日志反推代码工具retrace. ...
- android代码关闭数据库,android – 我应该如何正确打开和关闭我的数据库
我有一个应用程序,它将一些数据存储在SQLite数据库中.此外,我在我的应用程序中进行了大量查询和重新查询.我在其中有大约15个活动.并且所有人都使用数据库来查询数据. 但我正在做的是在每个活动中打开 ...
- android代码查找图像,Android平台上利用opencv进行图像的边沿检测
原标题:Android平台上利用opencv进行图像的边沿检测 近开始接触opencv for Android,从网上down了图像的边沿检测的代码. 测试图片: 在Android2.3.1模拟器上跑 ...
- Android代码 listview选中,android自定义listview的选中状态
中心思想:将选中状态设置为完全透明色(即看不到自定义的选中状态)然后将listview 的每一项的背景设置为选中则切换背景 1,选择2个图片一个为一般的显示状态,另一张为选中状态的图片 在drawab ...
- Android代码混淆处理,android代码混淆解决方案
以下包含了常见的基本代码与一些三方框架的混淆方案. ##########################基本混淆参数###################### # 代码混淆压缩比,在0~7之间,默认 ...
最新文章
- ASP.NET的实时天气及24小时天气预报(C#)
- 蝴蝶曲线python_ProE常用曲线方程:Python Matplotlib 版本代码(蝴蝶曲线)
- 深度学习 - MPII Human Pose Database数据集下载
- 1.4、设置 SpringApplication 主启动类
- 精通CSS滤镜(FILTER)
- uhs3内存卡有哪些_三分钟教你看懂存储卡标识
- WIN7 IE8假死现象解决方法
- 文件搜索工具ProFind for Mac
- 2021年IEEE Fellow刚刚放榜!84位华人学者当选再创新高!
- ictclas4j java_ictclas4j 分词工具包 安装流程
- 微信小程序分页(超简单)
- android汉字转拼音,不用第三方包
- 移动硬盘直接拔出后无法读取
- 企业微信小程序开发(行事历)
- 交易就是练就这五种能力(干货分享)
- 寒冬潮袭过后(2018总结):各知名互联网一线公司年度大裁员
- 中职计算机专业英语ppt,计算机专业英语ppt
- 2020年阿里云双11活动官网地址入口
- .NET基础笔记(C#)
- 透明度与十六进制代码转换