Android中控制银行卡号的输入 即4个数字空一格

  • 项目中需要做这个功能,本来想偷个懒网上找一下,找了几个发现写的太复杂了,而且还有问题。

Android中控制银行卡号的输入 即4个数字空一格_第1张图片

分享代码

    private TextWatcher mTextWatcher = new TextWatcher() {        int beforeLength;        @Override        public void beforeTextChanged(CharSequence s, int start, int count, int after) {            beforeLength = s.length();        }        @Override        public void onTextChanged(CharSequence s, int start, int before, int count) {            mBtnOk.setEnabled(s.length() == 19);        }        //一般我们都是在这个里面进行我们文本框的输入的判断,上面两个方法用到的很少        @Override        public void afterTextChanged(Editable s) {            int length = s.toString().length();            boolean b = s.toString().endsWith(" ");            if (beforeLength < length) {//判断输入状态                if (length == 4 || length == 9 || length == 14) {                    mEtCardId.setText(new StringBuffer(s).insert(length, " ").toString());                } else if (length == 5 || length == 10 || length == 15) { //另一种情况,手动删除空格再次输入后                    if (!b) {                        mEtCardId.setText(new StringBuffer(s).insert(length - 1, " ").toString());                    }                }            } else { //删除状态                if (b) {                    mEtCardId.setText(new StringBuffer(s).delete(length - 1, length).toString());                }            }            //设置指针选中位置            mEtCardId.setSelection(mEtCardId.getText().toString().length());        }    };

这是一个学习用的金融项目,搞了一堆东西。感兴趣的请到github下载
https://github.com/Everglowzz/P2P

更多相关文章

  1. Android 状态栏通知
  2. Color State List用于控件在各状态下的文本颜色显示
  3. Android判断App前台运行还是后台运行(运行状态)
  4. Android Studio如何实现隐藏标题栏和状态栏:
  5. Android中如何实现高亮显示即选中状态
  6. Android的状态机模式StateMachine与State
  7. android checkbox 未选中状态 已选中状态 替换成自己的图片

随机推荐

  1. SQL实现递归及存储过程中In()参数传递解
  2. sql将时间类型转换为字符串类型汇总
  3. 判断数据库表是否存在以及修改表名的方法
  4. sum(case when then)(判断男女生的个数)
  5. 获取MSSQL 表结构中字段的备注、主键等信
  6. SQL排除重复结果只取字段最大值分享
  7. SQLSERVER 根据地图经纬度计算距离差示例
  8. SQL 查询和删除重复字段数据的方法
  9. 分享Sql日期时间格式转换
  10. 如何恢复数据库的账号 登录名/用户名等