博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
仿支付宝/微信的password输入框效果GridPasswordView解析
阅读量:6264 次
发布时间:2019-06-22

本文共 2339 字,大约阅读时间需要 7 分钟。

仿支付宝/微信的password输入框效果GridPasswordView解析,把一些设置和一些关键的地方列了出来,方便大家使用,可能能够省一部分的时间,也算是自己的积累吧。

1.password框能够输入的类型PasswordType

public enum PasswordType {    NUMBER, TEXT, TEXTVISIBLE, TEXTWEB;}
这里能够自行加入类型,然后在GridPasswordView中改动

@Override    public void setPasswordType(PasswordType passwordType) {        boolean visible = getPassWordVisibility();        int inputType = InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_VARIATION_PASSWORD;        switch (passwordType) {            case TEXT:                inputType = InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_PASSWORD;                break;            case TEXTVISIBLE:                inputType = InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD;                break;            case TEXTWEB:                inputType = InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_WEB_PASSWORD;                break;        }        for (TextView textView : viewArr)            textView.setInputType(inputType);        setPasswordVisibility(visible);    }

2.PasswordView中的抽象方法的作用

interface PasswordView {	//获取password    String getPassWord();    //清空password    void clearPassword();    //设置password    void setPassword(String password);    //设置password可见性    void setPasswordVisibility(boolean visible);    //password可见性的切换    void togglePasswordVisibility();    //设置password改变监听    void setOnPasswordChangedListener(GridPasswordView.OnPasswordChangedListener listener);        //设置password类型    void setPasswordType(PasswordType passwordType);}
3.GridPasswordView中还有些方法没有去操作。有须要能够自己去写

setBackground(Drawable)setBackgroundColor(int)setBackgroundResource(int)setBackgroundDrawable(Drawable)
这个类是View的主类。能够通过这个类去满足你的需求

4.在GridPasswordView中设置框框颜色和背景颜色(绿色和红色)

private static final int DEFAULT_LINECOLOR = 0xaa61cea8;private static final int DEFAULT_GRIDCOLOR = 0xffe66961;

5.设置文本的大小和颜色(40px和蓝色)

private static final int DEFAULT_TEXTSIZE = 40;textColor = ColorStateList.valueOf(getResources().getColor(android.R.color.holo_blue_light));
6.在gridpasswordview_styles.xml中设置了样式,大家依据须要更改

        
7.在gridpasswordview_attr.xml设置属性值

8.效果图

源代码下载地址;

你可能感兴趣的文章
手写堆优化dijkstra
查看>>
解决asp.net MVC中 当前上下文中不存在名称“model” 的问题
查看>>
cvs 一般是采用window用户账号的登录方式
查看>>
Integer to Roman
查看>>
bzoj4004[JLOI2015]装备购买
查看>>
ajax--->简单加法小练习
查看>>
剑指offer例题——反转链表
查看>>
帧内宏块预测流程 (转载)
查看>>
magento性能优化
查看>>
next_permutation函数
查看>>
How to create own operator with python in mxnet?
查看>>
jQuery Ajax 实例 全解析
查看>>
博客装扮3-博客园界面装扮优化教程
查看>>
STM32CubeMX的串口配置,以及驱动代码
查看>>
组合数学 + STL --- 利用STL生成全排列
查看>>
Notepad++配置c/c++环境
查看>>
PHP——获取上传文件的后缀名
查看>>
全面理解HTTP协议
查看>>
lhgdialog弹出窗口控件 v4.1.0使用总结
查看>>
linux 中nvme 的中断申请及处理
查看>>