android 输入金额,EditText输入金额保留两位小数点
xml里面EditText加入type:android:inputType="numberDecimal"/*** 输入金额保留小数点后两位* @param edit*/public static void setEditChange(final EditText edit){edit.addTextChangedListener(new TextWatcher() {@Overridepubli
xml里面EditText加入type:
android:inputType="numberDecimal"
/**
* 输入金额保留小数点后两位
* @param edit
*/
public static void setEditChange(final EditText edit){
edit.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
//如果"."在起始位置,则起始位置自动补0
if (s.toString().trim().substring(0).equals(".")) {
s = "0" + s;
edit.setText(s);
edit.setSelection(2);
}
}
@Override
public void afterTextChanged(Editable s) {
String temp = s.toString();
int posDot = temp.indexOf(".");
if (posDot <= 0) return;
if (temp.length() - posDot - 1 > 2) {
s.delete(posDot + 3, posDot + 4);
}
}
});
}
然后调用方法传入editText即可:
setEditChange(editText);
更多推荐
所有评论(0)