美文网首页
Android中限定Edittext的输入内容

Android中限定Edittext的输入内容

作者: Mr_冯先生 | 来源:发表于2016-12-20 10:32 被阅读84次

    限定输入Edittext的内容为常用的价格(小数点后最多两位)

       /**
         * 限定价格为输入editText的输入条件
         *
         * @param s        editText在onTextChanged方法中的CharSequence s
         * @param editText 当前editMoney.isFocused()为true的editText控件
         */
        public static void edit(CharSequence s, EditText editText) {
            if (s.toString().contains(".")) {
                if (s.length() - 1 - s.toString().indexOf(".") > 2) {//小数点之后只能输入两位
                    s = s.subSequence(0, s.toString().indexOf(".") + 3);
                    editText.setText(s);
                    editText.setSelection(s.length());
                }
            }
            if (s.length() > 0 && s.charAt(0) == '.') {//小数点前至少有一位
                editText.setText("0" + s);
                editText.setSelection(s.length() + 1);
            }
            if (s.length() > 1 && s.charAt(0) == '0' && s.charAt(1) != '.') {//大于1的数前面不能有0
                editText.setText(s.subSequence(1, s.length()));
                editText.setSelection(s.length() - 1);
            }
        }
    

    相关文章

      网友评论

          本文标题:Android中限定Edittext的输入内容

          本文链接:https://www.haomeiwen.com/subject/ykuxvttx.html