两位小数,并且设置输入边界"/>
EditText设置输入仅能输入两位小数,并且设置输入边界
1.xml文件中添加输入小数限制
android:numeric="decimal"
2.java代码中添加输入监听
mEt.addTextChangedListener(new TextWatcher() {@Overridepublic void onTextChanged(CharSequence s, int start, int before, int count) {}@Overridepublic void beforeTextChanged(CharSequence s, int start, int count,int after) {// TODO Auto-generated method stub}@Overridepublic void afterTextChanged(Editable s) {String temp = s.toString(); if (MAX_VALUE != -1 && MIN_VALUE != -1) { double markVal = 0; try { markVal = Double.parseDouble(temp); } catch (NumberFormatException e) { markVal = 0; Toast.makeText(getBaseContext(), "数据有误", Toast.LENGTH_SHORT).show(); } if (markVal > MAX_VALUE) //设置的最大值MAX_VALUE{ markVal = MAX_VALUE;Toast.makeText(getBaseContext(), "不能超过最大值", Toast.LENGTH_SHORT).show(); }} int posDot = temp.indexOf("."); if (posDot == 0) s.insert(0, "0"); //开头输入.自定填充0. if (temp.length() - posDot - 1 > 2) //限制输入两位小数{ s.delete(posDot + 3, posDot + 4); } }});
更多推荐
EditText设置输入仅能输入两位小数,并且设置输入边界
发布评论