相关疑难解决方法(0)

如何将EditText输入限制为数字(可能是十进制和带符号)输入?

我读过Android:将EditText限制为数字,如何在android中的EditText上显示数字键盘?.不幸的是,它们似乎都不符合我的需求.

我想将EditText输入限制为仅限数字.但是,我还想允许签名和/或十进制输入.

这是我当前的代码(我需要以编程方式执行此操作):

EditText edit = new EditText(this);

edit.setHorizontallyScrolling(true);
edit.setInputType(InputType.TYPE_CLASS_NUMBER);
Run Code Online (Sandbox Code Playgroud)

有了这个,我的EditText快乐地将所有输入限制为数字.不幸的是,它不允许任何其他内容,如小数点.

如果我将该行更改为edit.setInputType(InputType.TYPE_NUMBER_FLAG_DECIMAL),则EditText接受所有输入(这不是我想要的...).

我尝试过组合旗帜(绝望地看看它是否会起作用):

edit.setInputType(InputType.TYPE_CLASS_NUMBER);
edit.setInputType(InputType.TYPE_NUMBER_FLAG_DECIMAL)
edit.setInputType(InputType.TYPE_NUMBER_FLAG_SIGNED)
Run Code Online (Sandbox Code Playgroud)

这也不起作用(EditText照常接受所有输入).

那么,我该怎么做?

android android-edittext

53
推荐指数
6
解决办法
9万
查看次数

标签 统计

android ×1

android-edittext ×1