Android——EditText金额输入控制位数(小数点前几位,小数点后几位)
来源:互联网 发布:淘宝摄影师价格 编辑:程序博客网 时间:2024/06/05 10:53
原理很简单监听editText输入,判断小数点前的位数和小数点后面的位数,超过则删除输入的字符,下面直接贴出代码。
/** * @Description:EditText内容输入限制最大:小数点前五位,小数点后2位 * @author: jiawen.gu * @CreateDate: 2017/11/6 */public class EditTextJudgeNumberWatcher implements TextWatcher { private EditText editText; public EditTextJudgeNumberWatcher(EditText editText) { this.editText = editText; } @Override public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) { } @Override public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) { } @Override public void afterTextChanged(Editable editable) { judgeNumber(editable,editText); } /** * 金额输入框中的内容限制(最大:小数点前五位,小数点后2位) * * @param edt */ public static void judgeNumber(Editable edt,EditText editText) { String temp = edt.toString(); int posDot = temp.indexOf(".");//返回指定字符在此字符串中第一次出现处的索引 int index = editText.getSelectionStart();//获取光标位置 // if (posDot == 0) {//必须先输入数字后才能输入小数点 // edt.delete(0, temp.length());//删除所有字符 // return; // } if (posDot < 0) {//不包含小数点 if (temp.length() <= 5) { return;//小于五位数直接返回 } else { edt.delete(index-1, index);//删除光标前的字符 return; } } if (posDot > 5) {//小数点前大于5位数就删除光标前一位 edt.delete(index-1, index);//删除光标前的字符 return; } if (temp.length() - posDot - 1 > 2)//如果包含小数点 { edt.delete(index-1, index);//删除光标前的字符 return; } }}
下面是使用方法:
EditText editText= (EditText) findViewById(R.id.editText);editText.addTextChangedListener(new EditTextJudgeNumberWatcher(editText));
代码很简单,注释也很清楚,希望对你有用!
阅读全文
0 0
- Android——EditText金额输入控制位数(小数点前几位,小数点后几位)
- Android EditText 输入金额(小数点后两位)
- Android EditText控制小数点位数及输入限制工具类
- Android 限制EditText输入小数点后面位数
- android 金额输入框(小数点后两位)
- EditText限制输入小数点后字符位数
- EditText金额输入(限制输入金额大小和小数点后两位)
- android EditText 中的TextWatcher 限制小数点位数
- qml控制小数点位数
- Android EditText监听小数点让用户只能输入小数点后两位
- Android EditText监听小数点让用户只能输入小数点后两位
- Android EditText监听小数点让用户只能输入小数点后两位
- Android EditText监听小数点让用户只能输入小数点后两位
- Android EditText监听小数点让用户只能输入小数点后两位
- Android EditText监听小数点让用户只能输入小数点后两位
- Android EditText监听小数点让用户只能输入小数点后两位
- Android EditText监听小数点让用户只能输入小数点后两位
- iOS 判断输入的字符串小数点前几位和后几位方法(适用于金额输入)
- 2. Add Two Numbers leetcode java
- Source Insight源代码的导入
- java集合框架-ConcurrentHashMap
- atoi会忽略前面字符串的空格
- 十大Intellij IDEA快捷键
- Android——EditText金额输入控制位数(小数点前几位,小数点后几位)
- Unity3D 渲染管线流程
- unity各个平台的路径总结
- Ubuntu系统下安装Erlang和RabbitMQ
- 12,桥接模式-露娜的召唤师技能
- 链表的删除
- jacob word转html(加上对word的一些格式处理)
- Unity Editor GUI 编辑器入门教程
- 全面认识快照(Snapshot)技术