1、限制輸入框小數(shù)位數(shù)和輸入框的總位數(shù)
/**
* 限制小數(shù)的位數(shù)和總的位數(shù)
*
* @param et 輸入框
* @param decimalNum 小數(shù)的位數(shù)
* @param totalNum 總位數(shù)
*/
public static void decimalNumber(final EditText et, final int decimalNum, final int totalNum) {
InputFilter lengthFilter = new InputFilter() {
@Override
public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) {
// source:當前輸入的字符
// start:輸入字符的開始位置
// end:輸入字符的結(jié)束位置
// dest:當前已顯示的內(nèi)容
// dstart:當前光標開始位置
// dent:當前光標結(jié)束位置
Log.i("wu", "start==" + start + "==end==" + end + "==dstart==" + dstart + "==dend" + dend);
if (dest.length() == 0 && source.equals(".")) {
return "0.";
}
String dValue = dest.toString();
if (dValue.length() >= totalNum) {
return "";
}
String[] splitArray = dValue.split("\\.");
if (splitArray.length > 1) {
String dotValue = splitArray[1];
String content = et.getText().toString().trim();
int index = content.indexOf(".");
if (dotValue.length() == decimalNum) {
if (index < dstart) {
return "";
}
}
}
return null;
}
};
et.setFilters(new InputFilter[]{lengthFilter});
}
2、限制輸入框小數(shù)位數(shù)
/**
* 限制輸入框小數(shù)位數(shù)
*
* @param et
* @param decimalNum
*/
public static void decimalNumber(final EditText et, final int decimalNum) {
decimalNumber(et, decimalNum, Integer.MAX_VALUE);
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。