【发布时间】:2020-05-09 08:47:50
【问题描述】:
有没有办法做到这一点?
例如,我希望小数点前的最大数字为 9。
允许的数字示例:
1.56, 3.68, 9.9, 2.1、
我已经设置了一个小数输入过滤器,允许在小数点后最多输入 2 个数字:
class DecimalFilter : Java.Lang.Object, IInputFilter
{
//Pattern mPattern;
String regex = "[0-9]+((\\.[0-9]{0," + (2 - 1) + "})?)||(\\.)?";
public DecimalFilter(int digitsAfterZero)
{
//mPattern = Pattern.compile("[0-9]+((\\.[0-9]{0," + (digitsAfterZero - 1) + "})?)||(\\.)?");
regex = "[0-9]+((\\.[0-9]{0," + (digitsAfterZero - 1) + "})?)||(\\.)?";
}
public Java.Lang.ICharSequence FilterFormatted(Java.Lang.ICharSequence source, int start, int end, ISpanned dest, int dstart, int dend)
{
if (System.Text.RegularExpressions.Regex.IsMatch(dest.ToString(), regex))
{
return new Java.Lang.String(string.Empty);
}
return null;
}
}
但是我如何修改它以限制小数点前的数字数量,而不仅仅是小数点后的数量?
谢谢
【问题讨论】:
标签: xamarin.android android-edittext decimalformat