Android studio—密码规范与密码小眼睛
Android studio—密码规范与密码小眼睛
文章目录
- Android studio—密码规范与密码小眼睛
- 回顾博客
- 具体功能完善
- 效果预览
- 规范密码
- 密码小眼睛
- 密码可见和不可见
本文主要对博主曾经的博客:Android studio—SQLite修改密码的功能进行进一步完善。除了原有的修改密码,注销账户功能外。
本次加入:1、规范密码:6-16位且开头为英语+数字组合
2、密码开头为大写3
3、密码小眼睛:可见与不可见
回顾博客
Android studio—SQlite数据库注册登录:https://blog.csdn.net/genijmni/article/details/106626300
Android studio—SQlite修改密码:https://blog.csdn.net/genijmni/article/details/106697445
Android studio—SQlite注销账号(删除账号):https://blog.csdn.net/genijmni/article/details/106698703
Android studio—登录注册功能实用技巧:https://blog.csdn.net/genijmni/article/details/106699294
具体功能完善
1、规范密码:6-16位且开头为英语+数字组合
2、密码开头为大写3
3、密码小眼睛:可见与不可见
效果预览
规范密码
通过对密码规范制定规则,以提高密码的安全性。
和规定手机号码一样,我们需要指定我们想要的规则:[A-Z]+[0-9A-Za-z]{6,16}
String regex="^(?=[A-Z])[0-9A-Za-z]{6,16}$";
在这里我们还需要了解一下JAVA中的一些规定:
- (?=rule)表示正排序下,该位必须匹配rule
- (?!rule)表示正排序序下,该位必须不能匹配rule
- (?<=rule)表示用在末尾必须匹配rule
- (?<!rule)表示用在末尾必须不能匹配rule
如果你想要首位不必大写字母:
String regex="^(?=[A-Za-z])[0-9A-Za-z]{6,16}$";
在此基础上进行更改即可
通过这个规则完成:6-16位,开头为大写英文字母+数字组合
规则书写在主类之中,写在onCreate方法之外
public boolean isContainAll(String string){String regex="^(?=[A-Z])[0-9A-Za-z]{6,16}$";Pattern pattern = Pattern.compile(regex);Matcher matcher= pattern.matcher(string);boolean isMatch=matcher.matches();return isMatch;
}
完成规则定义后,还需要进行正确的系统提示:
需要在XML文件新建一个TextView控件作为提示输出
if (isContainAll(password)==false)
{watch.setText("密码不得少于6位,且需要开头字母+数字组合");
}
密码的规范到这,就大致完成了。
密码小眼睛
常用App的密码选项中,在右侧有一个小眼睛,方便用户对密码的可见和不可见进行操作。
我们需要怎么完成了,首先,我们需要在drawable中添加两张照片,一张是开眼,一张时闭眼:
由于我这是网上截图的小眼睛(若侵权,请告知,我会删除)
随后我们需要先在布局文件中添加一个ImagView图片控件,放在密码栏右侧
<ImageViewandroid:layout_width="0dp"android:id="@+id/eye"android:layout_weight="1"android:layout_marginTop="30dp"android:layout_height="wrap_content"/>
随后在JAVA文件中对控件定义,并将密码密码先为隐藏:
private boolean hide =true; //设置为隐藏
private ImageView eye; //定义控件
eye = findViewById(R.id.eye); //绑定控件
eye.setImageResource(R.drawable.close); //选择初始样貌为闭眼
这样准备阶段完成,后分别定义密码可见和密码不可见状态。
密码可见和不可见
通过switch方法,对可见和不可见进行选择:
eye.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {switch (v.getId()){case R.id.eye:if (hide == true){eye.setImageResource(R.drawable.open); //可见样貌HideReturnsTransformationMethod method = HideReturnsTransformationMethod.getInstance(); //可见userpassword.setTransformationMethod(method);hide = false;}else{eye.setImageResource(R.drawable.close); 不可见样貌TransformationMethod method = PasswordTransformationMethod.getInstance(); //隐藏userpassword.setTransformationMethod(method);hide = true;}int index = userpassword.getText().toString().length();userpassword.setSelection(index);break;}}});
如此就能完成密码小眼睛可见不可见功能。
Android studio—密码规范与密码小眼睛相关推荐
- android修改用户名和密码错误,Android应用开发Android Studio 修改用户名、密码、URL等操作教程...
本文将带你了解Android应用开发Android Studio 修改用户名.密码.URL等操作教程,希望本文对大家学Android有所帮助. 修改用户名.密码: 在AndroidStudio的ter ...
- Android studio开发-单界面单机小程序
Android studio开发-单界面单机小程序 最终结果展示 步骤: 建立项目 file-new-new project 新建一个项目文件 选择一个empty activity 配置项目名称以及项 ...
- android密码小眼睛,android 实现点击edittext的“小眼睛”切换明密文
很多时候,我们为了用户的隐私安全,需要在密码输入的时候,显示密文.为了更好的用户体验,我们给用户提供了可以切换明密文的小图标(小眼睛) 先来看一下效果图: 这里我们可以有两种实现方式: 一. 布局文件 ...
- 如何解决android studio的模拟器有密码的问题
原文链接:https://jingyan.baidu.com/article/e4d08ffd6a95300fd2f60dcf.html ------------------------ 在使用And ...
- 密码框后的小眼睛怎么写?
问题:项目过程中密码框自带的小眼睛时有时无,输入密码后鼠标移动到其他地方点击一下再移回来,小眼睛消失,无法查看明文密码 解决方法:自己写一个小眼睛定位到input框后. 1.定义两个input框,类型 ...
- input如何显示密码隐藏密码,点击小眼睛显示隐藏密码
目录 一.如何单纯的在密码框显示密码 二.如何在密码框里面显示并可以隐藏密码 三.代码展示 四.结果展示 一.如何单纯的在密码框显示密码 单纯显示密码可以吧type里面的值改成text,如果要隐藏 ...
- Android Studio代码提示前的小图标
Android Studio图标的意思 每次在写代码的时候,一直不知道代码提示前的小图标是什么意思 最近Google了一下,在IntelliJ IDEA 网站看到了Icon的说明 Common Ico ...
- android密码框右侧显示小眼睛
不知道为什么android 资料好少啊,一艘都2012-2015年的居多....这是为什么呢? 实现效果 <?xml version="1.0" encoding=" ...
- css去掉ie浏览器输入框后面的小叉叉,和密码框后面的小眼睛
css代码里面放入这个就可以了 ::-ms-clear, ::-ms-reveal{display: none;}
最新文章
- 问题1:程序员要做一辈子?
- 程序与生活:程序员要保持好奇心
- eclipse工作空间在哪里配置?
- 基类与派生类之间的转换关系
- 博图如何上载wincc程序_WINCC 博途 以太网下载方式
- IDEA中Maven项目中界面右边的Maven Projects中子项目出现灰色
- php获取当前页面地址代码,PHP获取当前页面URL地址程序代码
- Mongodb 3.0 创建用户
- ADO.NET数据库编程
- 素因子分解算法python语言_python中求取最小公倍数的两种方法
- em算法详细例子及推导_EM算法详解
- 图像处理求均方差得c语言实现,数字图像处理第10章课件.ppt
- HDMI接口 HDCP
- 成都理工大学计算机考研资料汇总
- voldemort分布式数据库Rebalance的代码总结
- Litepal在没有存数据之前,需要在主线程中去先去存一些不必要的数据
- Word文档使用Mathtype如何实现公式自动居中并右对齐编号?
- 一天一道CTF 第六天
- Messaging短信源码导入AndroidStudio
- 漏洞修复需要升级打补丁,打补丁准备工作