首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

安卓应用安全指南 5.1 创建密码输入界面

5.1.2.1 如果输入了密码,提供屏蔽显示功能(必需) 智能手机通常用在火车公共汽车拥挤地方,而且存在密码被某人偷窥风险。 因此,屏蔽显示密码功能是应用规范所必需。...有两种方法可以将EditText显示为密码:在布局 XML 中静态指定此通过从程序中切换显示来动态指定此。...此外,如果存在以纯文本显示选项,则还需要为系统准备,来自动取消纯文本显示,如设置纯文本显示时间。密码纯文本显示限制,在未来版本另一篇文章中发布。因此,密码纯文本显示限制不包含在示例代码中。...5.1.2.4 显示最后输入密码时,必须显示虚拟密码(必需) 当指定最后输入密码时,不要给第三方任何密码提示,它应该显示为带有屏蔽字符(*固定位数虚拟。...设置 -> 安全 -> 使密码可见 打开“使密码可见”设置时,最后输入字符以纯文本显示。 经过一定时间(约两秒),输入下一个字符后,以纯文本显示字符将被屏蔽。 关闭时,输入后会立即屏蔽。

1.1K20

Android开发笔记(一百四十六)仿支付宝支付密码输入框

编辑框EditText算是Android一个基础控件了,表面上看,EditText只负责接收用户手工输入文本;可实际上,要把这看似简单文本输入做得方便易用,并不是一个简单事情...然而,计划赶不上变化,开发工作中总有一些现有控件无法直接实现需求,就像支付宝支付密码输入框,在一排方格区域内输入并显示密码,每个密文字符之间又有竖线分隔。...,每当密码输入或者删除之时,就通知方格布局更新密显示;同时还得监控输入字符数是否达到6位,如果达到6位就触发密码完成事件; 对于接管密码显示方格布局来说,需要实现以下几项操作: 1、建立一个密码文本队列...,决定当前显示明文还是密如果是密,则显示哪个密文字符; 5、每当EditText文本发生变更之时,相应更新TextView队列各项文本显示; 上述改造内容,大部分都有可以直接调用函数,...但有两个功能实现要特别注意: 首先,对于密文字符Android默认显示点号(·),可显示星号(*)也很常见,那有没有办法把系统默认点号替换为星号呢?

1.8K30
您找到你想要的搜索结果了吗?
是的
没有找到

TextInputLayout使用与实现

Layout配置文件 TextInputLayout效果 在两个输入框切换点击切换时候,EditText文本会有动画方式飞向左上角。 ?...TextInputLayout效果 TextInputLayout动画实现原理 原本以为在点击输入框时候,会是在EditTextFocus改变时候,开始执行动画,结果发现是在整个TextInputLayout...refreshDrawableState 而在updateLableVisibility函数中,会判断当前EditText中是否有文字或者获取到焦点,如果有的话,则开始执行expandHint(展开文本...expandHint 在animateToExpansionFraction函数中会判断当前Animator是否和目标值一样,如果一样的话,则不用做动画了,否则则会使用ObjectAnimator设置...而在setExpansionFraction中,会根据当前和目标值计算出来要绘制位置,以及颜色,最后用ViewCompatpostInvalidateOnAnimation重绘View ?

1.2K40

Kotlin学习日志(六)控件使用

然后密码当然不能明文显示,也不能明文传输啊,也不能是纯数字或者纯字母,特殊符号什么,这里又涉及到了密码安全登录,常见是三级,纯数字是不行,这一步你在注册时候就过不去,然后是最短和最长密码位数限制...,一般来说最短8位最长18位,然后就是传输过程加密,后台对比数据库是否一致,一致再允许登录,进一步出来就是登录过程中网络处理了,网络请求多长时间,网络异常,一些问题处理,但是在用户眼里就是一个简单登录而已...(2)由于待显示字符串需要拼接按钮文本,因此需要通过字符串模板表达式"${***} "将按钮文本置于该字符串。 2....明文显示 实际业务逻辑操作中,很多是在输入过程中对输入进行判断,对于输入时控制通过文本观察TextWatcher,它可以实时监控用户输入字符,并且支持在输入每个字符时由开发者进行手工干预...控件赋值不能像TextView那样,通过text来进行赋值 //否则会报错Editable与String类型不匹配,只能调用setText方法对EditText控件设置文本

1.7K30

Android日常开发问题总结:这些问题火候不够,随时变成删库跑路!

(context,colorId));//正确方式 4.国际化引用问题 a.静态/类全局变量需要单独判断; b.string 中文本空格效果无法体现,给字符串加上双引号 <string name="Chinese...12.分享链接至微信无法<em>显示</em>链接<em>的</em>缩略图 友盟分享链接<em>如果</em>内容中带有红包字样,那么图片会失效<em>显示</em>不出来(分享<em>的</em>主体倒是可以自己看到) 13.小米手机上<em>的</em>App使用浏览<em>器</em>打开尾缀带apk<em>的</em>地址无法正常下载安装...,小米系及华为应用<em>的</em>下载地址以及非.apk结尾<em>的</em>地址<em>则会</em>按照正常流程跳入浏览<em>器</em>进行下载。...<em>特殊</em>情况:<em>如果</em>整个页面是加载<em>的</em>H5,即便使用了上面的设置,还是会有白屏一闪而过<em>的</em>情景。...19.<em>EditText</em> digits属性 <em>android</em>:digits="0123456789" 常用来限定EditText输入格式。

1.3K30

Android文本开发

如果光标已经顶在了editText最末端,则需要添加新imageView 如果光标已经顶在了editText最中间,则需要分割字符串,分割成两个EditText,并在两个EditText中间插入图片...同时,切换到后台时候,需要注意保存输入内容,避免长时间切换后台进程内存吃紧,在回到前台输入内容没有呢,查阅了汽车之家,易车app手机上文本编辑,都会有这个细节点优化。...如果不用WebView,使用TextView显示html富文本则会出现图片不显示,以及格式问题。...json提交到服务,服务拿到json后,结合富文本后续信息,比如,作者,时间,类型,标签创建可以用浏览打开h5页面,这个需要跟服务端配合。...参考博客 Android文本编辑(四):HTML文本转换:https://www.jianshu.com/p/578085fb07d1 Android 端 (图文混排)富文本编辑开发(一):https

8.4K20

TextInputLayout-Android M新控件

显示了一个“登录”文字与两个EditText元素,一个是为用户名准备,一个是为密码准备。布局中还包含了一个触发登陆流程按钮。背景颜色是扁平风格灰色。...一个单一EditText 在输入文字时候会隐藏hint,而被包含在TextInputLayout中EditText则会让hint变成一个在EditText上方浮动标签。...如果没有验证,后台可能反馈回不正确结果呈现给用户。对于用户来说既浪费了时间又体验不好。在发送到后台之前你应该先检查输入正确性。...需要方法是setErrorEnabled和setError。 setError设置一个红色错误消息,显示EditText下面。如果传入参数为null,错误消息将清空。...现在我们定义了什么是错误什么是正确,也知道了如何获取EditText数据以及显示可能错误,onClick方法实现就很简单了。

74020

Android开发笔记(三十六)展示类控件

如果填充图片显然不够经济,最简单做法,就是在xml布局中增加一个View控件,高度宽度设置为1dp,背景颜色设置为线条颜色,这样便实现了单独显示线条需求。...EditText EditText文本输入框,与输入有关属性说明如下: 在XML布局文件中指定: inputType : 指定输入文本类型。...给编辑框注册一个TextWatcher监听(addTextChangedListener方法),当检测到文本发生变化并找到回车换行符时,触发光标跳转操作; 2、保持当前控件不换行,依旧单行显示。...该功能有两种实现方式: 方式一:在布局文件EditText节点中加入singleLine属性,但该方式只在视觉上起作用,真正字符串还是带有回车换行符; android:singleLine="true...EditText还有一个需要特殊处理地方,就是自动关闭软键盘。一般我们希望点击其它控件时,原输入框软键盘就要自动消失,可惜Android不是这样处理。

1.4K30

Android软键盘输入处理技巧

今天我们来讨论一下Android中监听软键盘输入使用方式。它允许用户输入文本和执行其他操作。但是,有时候我们需要在用户输入文本时进行一些特殊处理,比如实时验证输入内容、限制输入字符类型。...比如,我们可以检查用户输入邮箱地址是否合法,如果不合法,可以显示错误提示。...) { // 在文本改变后执行操作 } }); 通过TextWatcher接口,我们能显示层进行输入监听,但如果我们需要在软键盘操作过程中就监听用户输入行为,又该如何实现呢...它允许您: 监听用户输入操作,如按键、删除。 拦截并自定义文本输入。 实现撤销、重做和自动修复等功能。 与 EditText 控件进行通信,以控制光标位置、文本选择和其他编辑操作。...InputConnection 包装,它会记录用户文本输入。

30910

Android EditText使用详解-包含很多教程上看不到功能演示

三:长度和空白提示文字,提示文字颜色,是否可编辑 EditText有一些属性可以设置EditText特性,比如最大长度,空白提示文字。...有时候我们有一些特属需要,要求只能在EditText中输入特定个数字符,比如身份证号、手机号吗。...EditText为我们提供了android:hint来设置当EditText内容为空时显示文本,这个文本只在EditText为空时显示,你输入字符时候就消失了,不影响你EditText文本。。...四:输入特殊格式字符 在我们开发程序时候不免会输入一些特属个数字符,比如密码(输入框字符要加密显示),电话号码(比如数字和-),数字,这些都算是一些特属格式字符,强大EditText同样为我们提供了输入这些特属格式字符设置...比如,在一个搜索中,我们输入要搜索文本,然后按Enter表示要去搜索了,但是默认Enter键显示是“完成”文本,看着不太合适,不符合搜索语义,如果显示“搜索”两个字或者显示一个表示搜索图标多好

3.7K20

实现Android键盘中英文适配

sp_14"/ 重点是 android:digits=”1234567890″ EditTextandroid:digits属性作用 是设置允许输入哪些字符。...则如果EditText获得焦点,会弹出数字输入法模拟键盘 请在xml中设置inputType属性即可 1、API中有,列举出来inputType都包括哪些。...” 可见密码 android:inputType=”textWebEditText” 作为网页表单文本 android:inputType=”textFilter” 文本筛选过滤 android:inputType...【A】stateUnspecified:软键盘状态并没有指定,系统将选择一个合适状态依赖于主题设置 【B】stateUnchanged:当这个activity出现时,软键盘将一直保持在上一个...但是转换出来只是显示为大写字母,存还是小写字母。

2.1K10

安卓入门-第三章-安卓常用控件使用方式

虽然指定文本内容正常显示了,不过我们好像没看出来TextView宽度是和屏幕一样宽。...总结一下:我们使用android:gravity来指定文字对齐方式,可选有top 、bottom 、left 、right 、center ,可以用“|”来同时指定多个,这里我们指定center...EditText应用场景非常普遍,在进行发短信、发微博、聊QQ操作时,你不得不使用EditText。...可以看到,EditText显示了一段提示性文本,然后当我们输入任何内容时,这段文本就会自动消失。  不过,随着输入内容不断增多,EditText会被不断地拉长。...实例,然后在按钮点击事件里调用EditTextgetText()方法获取到输入内容,再调用toString()方法转换成字符串,最后还是老方法,使用Toast将输入内容显示出来。

1.8K20

EditText 集锦 - 开发中常用用法及遇到各种坑

---- 常用基本属性 该片段内容来自于 重拾Android之路之EditText EditText属性(API 24) android:hint //设置hint提示文本 android:textColorHint...会自动换行).注意:该属性在使用时提示已过时,建议使用android:maxLines="1"属性替代. android:password=“true” //以密形式显示输入文本.注意:该属性在使用时提示已过时...,建议使用android:inputType属性替代. android:textAlignment //设置EditText文本显示位置,center(居中),inherit(默认,居左边显示),viewStart...//设置文本类型,用于帮助输入法显示合适键盘类型. android:maxLength //设置EditText最多接受文本个数. android:lines //设置EditText显示行数...因此,最好,还是采用如下方法, addTextChangedListener 监听文本变化,在字符串变化时候对文本长度进行截取, public static final int MAX_LEN =

2.2K20

【谷歌官方文档】1.1 建立第一个APP

SDK已安装最新Android版本(目前应该是4.1更高版本,如果你没有安装一个可用Android版本,就要先用SDK Manager来完成安装),我们仍然可以使用较老版本编译项目,但把该设为最新版本...添加一个文本输入框 与其它 View 一样,我们需要定义 XML 里某些属性来指定 EditText 属性。...android:hint 当文本框为空时候,会默认显示这个字符串。对于字符串 "@string/edit_message" 所引用资源应该定义在单独文件里,而不是直接使用字符串。...定义按钮文本使用 android:text 属性,设置为相似上一节中定义好 button_send 字符串资源。...如果使用 Android Studio开发,现在已经可以点击Send按钮启动这个activity了,但显示仍然是模板提供默认内容"Hello world",稍后修改显示自定义文本内容。

2.3K20

Android开发笔记(四十四)动态UI事件

文本变化事件 文本变化事件,主要用于EditText控件,包括继承自EditTextAutoCompleteTextView控件,可监控文本变化前、变化中、变化后行为。...在博Android开发笔记(二十)顶部导航栏ActionBar》里面,博主提到ActionBar自带搜索框SearchView,但是SearchView存在几点不足: 1、搜索按钮只能显示图标,...首先熟悉下AutoCompleteTextView新增几个属性: completionHint : 指定下拉列表底部提示文字  completionThreshold : 指定至少输入多少个字符才会显示提示...: setCompletionHint : 设置下拉列表底部提示文字  setThreshold : 设置至少输入多少个字符才会显示提示 setDropDownHorizontalOffset...基于此,博主在下面又给出了基于EditText+ListView实现方式,该方式除了在列表中显示关键词与数量外,还增加了一个叉号按钮用来立即清空文本框。

1.1K10

Android开发笔记(一百三十八)文本输入布局TextInputLayout

众所周知,EditText未输入字符时,我们可以给它显示默认提示文字hint;可是一旦输入字符,这个hint提示就消失了,虽然没有提示也没有什么大碍,但有总比没有好呀。...倘若在代码中调用setCounterMaxLength方法设置了文字计数最大长度,那么运行时当输入字符数超过计数最大,应用会异常退出,日志报错“Failed to resolve attribute...> 文本输入编辑框TextInputEditText TextInputEditText是Android6.0后新加编辑框控件,它用法跟EditText没什么区别,之所以鼓捣这么一个新控件,是为了解决一个小小问题...如果不用TextInputLayout,只使用EditText的话,横屏时编辑框也会显示提示文字;可是一旦加了TextInputLayout,再看横屏编辑框,发现编辑框内提示文字不见了,这是因为TextInputLayout...点击下载本文用到文本输入布局工程代码 点此查看Android开发笔记完整目录

1.5K30

Android文件读写和使用SharedPreferences储存数据

TextUtils.isEmpty(str)) // 如果字符串不空,返回这个字符串 { return str; } else...这里说一些 TextUtils.isEmpty(CharSequence str) 方法,一个静态方法,如果str为null或者为空字符,这个方法都会返回true。这里用来检测字符串是否为空。...,通过“键--“对方式来储存,读取时候通过“键”来读取对应”。...} } } 主要思想还是通过两个自定义方法实现:login() 方法用于单击“登录”按钮时对用户名和密码信息储存,loadUserInfo() 方法用于恢复用户名和密码操作...当然,这里代码还有很多不足之处,比如没有实现用户名和密码检测,没有对空用户名和密码进行处理,有兴趣小伙伴们可以自己实现。 如果博客中有什么不正确地方,还请多多指点。 谢谢观看。。。

1.9K10

Android使用TextInputLayout创建登陆页面

一个单一EditText 在输入文字时候会隐藏hint,而被包含在TextInputLayout中EditText则会让hint变成一个在EditText上方浮动标签。...通过验证输入,你可以防止用户输入无效邮箱地址或者是太短密码。如果没有验证,后台可能反馈回不正确结果呈现给用户。对于用户来说既浪费了时间又体验不好。在发送到后台之前你应该先检查输入正确性。...[a-zA-Z0-9-]+)*$/ 注:这个正则表达式意思我就不翻译了,如果你不熟悉正则表达式看了也没啥用。 因为我们想验证字符串,我必须依赖Pattern和Matcher两个类。...需要方法是setErrorEnabled和setError。 setError设置一个红色错误消息,显示EditText下面。如果传入参数为null,错误消息将清空。...现在我们定义了什么是错误什么是正确,也知道了如何获取EditText数据以及显示可能错误,onClick方法实现就很简单了。

1.6K10
领券