Android仿支付宝密码输入框与数字键盘

作者 : 开心源码 本文共1538个字,预计阅读时间需要4分钟 发布时间: 2022-05-12 共87人阅读

1.概述?

? ? Android自己设置密码输入框,通过自己设置输入显示框和自己设置输入键盘,实现仿支付宝数字键盘等。代码已托管到github,有需要的话可以去我的github下载。自己设置:关闭图标、文字内容、颜色、大小,弹框样式等。

先看效果图:


2.效果实现

2.1. 拆分控件之标题栏

包含一个关闭按钮,和一个标题文本,就是一个简单的ImageView和TextView,图标和文本(颜色、大小)可根据自己需求更改,调用如下方法等:

```

/**

* 关闭图片

*

*/

public void setCloseImgView(int resId) {

? mImageViewClose.setImageResource(resId);

}

/**

* 设置标题的文本

*/

public void setHintText(String text) {

? ? mTvHint.setText(text);

}

“`

2.2. 拆分控件之纯数字输入框


我使用的LinearLayout布局进行水平方向权重分配的6个TextView,边线使用的view1dp背景和不记得密码也是文本TextView

2.3. 拆分控件之9宫格数字键盘


这里是4*3的就宫格布局,我采用的是GridView进行放置的TextView按钮。

(1)0-9数字设置selector,实现点击变色效果,ClickListener进行密码输入;

(2)左下角空白文本,为了美观并无用处;

(3)删除使用的背景图片,通过TouchListener事件来实现点击切换效果图。ClickListener进行删除文本。

(4)逻辑解决:

使用的strPass字符串保存密码,根据情况进行清理、增加等。当密码==6位是回调onPassFinish方法进行服务器验证

“`

//0-9按钮

if (position < 11 &&position!=9) {

? ? if(strPass.length()==6){

? ? ? ? return;

? ? }

? ? else {

? ? ? ? strPass=strPass+listNumber.get(position);//得到当前数字并累加

? ? ? ? mTvPass[strPass.length()-1].setText(“*”); //设置界面*

? ? ? ? //输入完成

? ? ? ? if(strPass.length()==6){

? ? ? ? ? ? ? ? mPayClickListener.onPassFinish(strPass);//请求服务器验证密码

? ? ? ? }

? ? }

}

//删除按钮

else if(position == 11) {

? ? if(strPass.length()>0){

? ? ? ? mTvPass[strPass.length()-1].setText(“”);//去掉界面*

? ? ? ? strPass=strPass.substring(0,strPass.length()-1);//删除一位

? ? }

}

//空按钮

if(position==9){

}

“`

2.4. 拆分控件之与弹框组合

方式一:默认系统配置


方式二:自己设置配置(更多方法请到github查看)

new PayPassDialog(this,自己设置主题样式);

setWindowSize==弹框宽高

setGravity==动画与位置

getPayViewPass==得到组合控件

setCloseImgView==关闭图片设置

setForgetText==不记得文本设置

3.最后

更多配置方法请到github查看介绍,引入:? implementation ‘com.github.lzjin:AlipayPassDialog:1.1’? 即用。纯手工写,各位看官假如本文对你有帮助请点个赞吧。github地址: lzjin/AlipayPassDialog

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » Android仿支付宝密码输入框与数字键盘

发表回复