您的位置:首页 > 其它

edittext限制小数点后面只能输入两位

2018-02-07 10:14 295 查看
1、在对应的edittext上设置监听

recharge_money.addTextChangedListener(this);

监听处理方法如下:

直接贴代码,可直接使用

/**
* 以下三个是输入金额的edittext的监听
*/
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {

}

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

}

@Override
public void afterTextChanged(Editable s) {
String temp = s.toString();
int posDot = temp.indexOf(".");
if (posDot < 0) return;
//输入以 “ . ”开头的情况,自动在.前面补0
if (temp.startsWith(".") && posDot == 0) {
s.insert(0, "0");
return;
}
//输入"08" 等类似情况
if (temp.startsWith("0") && temp.length() > 1 && (posDot == -1 || posDot > 1)) {
s.delete(0, 1);
return;
}
//小数点后面只能有两位小数
if (temp.length() - posDot - 1 > 2) {
s.delete(posDot + 3, posDot + 4);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息