Android开发之设置Edittext小数点后两位以及限制位数同时使用
生活随笔
收集整理的这篇文章主要介绍了
Android开发之设置Edittext小数点后两位以及限制位数同时使用
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
这是公司项目开发中用到的
package com.Yhsh.mobile.cash.cashout;import android.text.InputFilter; import android.text.Spanned;import com.Yhsh.mobile.basic.util.LogUtils;/*** 限制输入小数点位数,以及开头不允许输入*/public class DecimalDigitsInputFilter implements InputFilter {/*** 限制小数位数*/private final int decimalDigits;public DecimalDigitsInputFilter(int decimalDigits) {this.decimalDigits = decimalDigits;}@Overridepublic CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) {int dotPos = -1;int len = dest.length();for (int i = 0; i < len; i++) {char c = dest.charAt(i);if (c == '.' || c == ',') {dotPos = i;break;}}if(source.equals(".") && dstart==0 && dend==0){return "";}if (dotPos >= 0) {// protects against many dotsif (source.equals(".") || source.equals(",")) {return "";}// if the text is entered before the dotif (dend <= dotPos) {return null;}if (len - dotPos > decimalDigits) {return "";}}return null;} }看下如何调用:
etPrice.setFilters(new InputFilter[]{new DecimalDigitsInputFilter(2), new InputFilter.LengthFilter(8)});我们看下效果图:
总结
以上是生活随笔为你收集整理的Android开发之设置Edittext小数点后两位以及限制位数同时使用的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 谷歌浏览器应用商店打不开,下载不了扩展程
- 下一篇: Android开发之EdittText输