Android EditText监听小数点让用户只能输入小数点后两位

来源:互联网 发布:疯狂淘宝李涛怎么样 编辑:程序博客网 时间:2024/06/05 05:16
当用户输入小数点的时候 监听小数点后面的位数,只要大于两位就立马删掉
转载自 https://www.2cto.com/kf/201409/334441.html
public static void setPricePoint(final EditText editText) {        editText.addTextChangedListener(new TextWatcher() {             @Override            public void onTextChanged(CharSequence s, int start, int before,                    int count) {                if (s.toString().contains(".")) {                    if (s.length() - 1 - s.toString().indexOf(".") > 2) {                        s = s.toString().subSequence(0,                                s.toString().indexOf(".") + 3);                        editText.setText(s);                        editText.setSelection(s.length());                    }                }                if (s.toString().trim().substring(0).equals(".")) {                    s = "0" + s;                    editText.setText(s);                    editText.setSelection(2);                }                 if (s.toString().startsWith("0")                        && s.toString().trim().length() > 1) {                    if (!s.toString().substring(1, 2).equals(".")) {                        editText.setText(s.subSequence(0, 1));                        editText.setSelection(1);                        return;                    }                }            }             @Override            public void beforeTextChanged(CharSequence s, int start, int count,                    int after) {             }             @Override            public void afterTextChanged(Editable s) {                // TODO Auto-generated method stub                             }         });     }

阅读全文
0 0
原创粉丝点击