在编辑文本中在十进制值前加一个点

时间:2017-02-28 14:50:24

标签: android android-edittext decimal

我正在尝试使用编辑文本做一些不应该是微不足道的事情。我希望能够输入一个点或点作为第一个条目后跟数字,但由于某种原因,这不起作用。如果我把零(0)然后一个数字,它工作正常。我希望用户能够在一个字段中输入美分。这是编辑文本对小数的支持的默认行为吗?或者可以在小部件本身上进行修改?或者是否需要编写特殊的格式化程序才能按此顺序显示值。

我有编程方式指定的输入类型

   protected int getInputType() {
    return InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_SIGNED
            | InputType.TYPE_NUMBER_FLAG_DECIMAL;
}

1 个答案:

答案 0 :(得分:0)

您可以尝试在EditText中将inputType添加为numberDecimal | numberSigned。 它应该工作,

android:inputType="numberDecimal|numberSigned"

您也可以动态添加inputType,

editText.setInputType(InputType.TYPE_NUMBER_FLAG_DECIMAL|InputType.TYPE_NUMBER_FLAG_SIGNED);

如果需要任何其他帮助,请告诉我。