我读过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照常接受所有输入).
那么,我该怎么做?