Android EditText 增加自定义过滤
Android EditText 增加自定义过滤
在Android中,可以通过对EditText设置setFilters方法,用代码控制EditText的输入长度,或控制输入小数的位数等。
1.设置EditText的输入长度
inputEdit.setFilters(new InputFilter[] { new InputFilter.LengthFilter(length)});
2.控制输入小数的位数
- // 设置小数位数控制
- InputFilter lengthfilter = new InputFilter() {
- public CharSequence filter(CharSequence source, int start, int end,
- Spanned dest, int dstart, int dend) {
- // 删除等特殊字符,直接返回
- if ("".equals(source.toString())) {
- return null;
- }
- String dValue = dest.toString();
- String[] splitArray = dValue.split("\\.");
- if (splitArray.length > 1) {
- String dotValue = splitArray[1];
- int diff = dotValue.length() + 1 - digLength;
- if (diff > 0) {
- return source.subSequence(start, end - diff);
- }
- }
- return null;
- }
- };
- inputEdit.setFilters(new InputFilter[] { lengthfilter });
评论暂时关闭