8

我需要维护一个EditText可以由用户编号输入的,在某些情况下我需要将文本设置为EditText12$ 之类的东西。所以我需要能够做setText()任何我想做的事。

我尝试设置一个 EditText ,其输入类型设置为 number ,这会产生数字键盘并删除该InputFilterEditText 的 's - 这仍然不允许我放置非数字字符

input.setFilters(new InputFilter[] {});

难道我做错了什么?有没有不同的方法来实现我的目标,一个带有数字键盘的 EditText,我可以以编程方式将一些非数字字符插入其中?

4

3 回答 3

12

这将使其保持数字,但将允许 $ 字符,将您需要的任何其他特殊字符添加到android:digits属性

<EditText
        android:id="@+id/editText1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:inputType="number"
        android:digits="0123456789,$">
于 2014-04-03T16:42:56.267 回答
2

只是为了增加aviran的答案。如果您在字符串中放置任何“,”,那么您也将允许在 EditText 中使用逗号。

下面将只允许 0-9 和 $。

<EditText android:id="@+id/editText1" android:layout_width="match_parent" android:layout_height="wrap_content" android:inputType="number" android:digits="0123456789$">

于 2014-05-14T20:40:59.797 回答
0

在 xml 中设置输入类型电话。

这可以帮助你...

如何在android中只为edittext设置数值?

于 2014-04-03T13:35:04.540 回答