Java android:以符号键盘模式启动,但不要';不要仅限于数字输入

Java android:以符号键盘模式启动,但不要';不要仅限于数字输入,java,android,Java,Android,我想指定Android应该以数字/符号模式启动给定EditText的软键盘。我知道这可以通过使用EditText.setInputType()将EditText的输入类型设置为数字来实现,但我不想将EditText的输入类型仅限于数字输入**。有没有另一种方法可以告诉Android它应该为给定的文本打开什么键盘 **基本上我想要一个数字输入的数学类,接受任意数学表达式,包括[0,9.+-/*()@:]。我相信魔法在于: editText.setInputType(InputType.TYPE_C

我想指定Android应该以数字/符号模式启动给定EditText的软键盘。我知道这可以通过使用EditText.setInputType()将EditText的输入类型设置为数字来实现,但我不想将EditText的输入类型仅限于数字输入**。有没有另一种方法可以告诉Android它应该为给定的文本打开什么键盘


**基本上我想要一个数字输入的数学类,接受任意数学表达式,包括[0,9.+-/*()@:]。

我相信魔法在于:

editText.setInputType(InputType.TYPE_CLASS_NUMBER);

经过一些研究,尝试了很多不同的东西,我找到了答案:

editField.setRawInputType(InputType.TYPE_CLASS_NUMBER);
//           ^^^ note the Raw!

因此,您需要设置输入类型的Raw版本来绕过设置的KeyListener,这会限制输入。

我很确定这会使输入只接受数字。但是我会验证。SetInputType&SetRawInputType限制问题明确表示他们不想做的输入。SetInputType&SetRawInputType限制问题明确表示他们不想做的输入几乎是同一个问题: