您的位置:首页 > 其它

EditText设置输入仅能输入两位小数,并且设置输入边界

2017-02-04 17:15 295 查看
1.xml文件中添加输入小数限制

android:numeric="decimal"


2.java代码中添加输入监听

mEt.addTextChangedListener(new TextWatcher() {

@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {

}

@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub

}

@Override
public 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);
}
}
});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: