public class DecimalDigitsFilter implements InputFilter {
private int maxDigits;
private SpannableStringBuilder spannableStringBuilder;
DecimalDigitsFilter(int maxDigits) {
this.maxDigits = maxDigits;
spannableStringBuilder = new SpannableStringBuilder();
}
@Override
public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) {
spannableStringBuilder.clear();
spannableStringBuilder.append(dest.toString());
spannableStringBuilder.insert(dstart, source.toString());
String numValue = spannableStringBuilder.toString();
if (!numValue.contains(".")) return null;
int dotIndex = numValue.indexOf(".") + 1;
int digits = numValue.substring(dotIndex).length();
if (digits > maxDigits) {
return "";
}
return source;
}
}
限制输入小数位数
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- 首先提到一个输入过滤器,用来约束用户输入的内容关键接口:InputFilters我们现在要做的就是重写这个接口 调用示例
- 今天要实现一个需求,限制textFiled的只能输入带两位小数的数字,参考网上找到的方法,并加以改进. 首先,自定...
- UITextField的代理方法中添加类似如下代码 - (BOOL)textField:(UITextField ...