如何强制Android手机键盘输入数字?

如何强制Android手机键盘输入数字?,android,keyboard,Android,Keyboard,具体来说,我如何让它弹出数字输入屏幕,但仍然能够切换到字母?理想情况下,我真正想要的是让它的行为与xml属性相同 <EditText ... android:inputType="textShortMessage"/> 但是在第一次显示时出现在数字输入屏幕(通过单击“?123”获得的屏幕),而不是通常的qwerty屏幕。我试过做某事 <EditText ... android:inputType="textShortMessage|numb

具体来说,我如何让它弹出数字输入屏幕,但仍然能够切换到字母?理想情况下,我真正想要的是让它的行为与xml属性相同

<EditText
    ...
    android:inputType="textShortMessage"/>

但是在第一次显示时出现在数字输入屏幕(通过单击“?123”获得的屏幕),而不是通常的qwerty屏幕。我试过做某事

<EditText
    ...
    android:inputType="textShortMessage|number"/>

但它所做的只是默认设置为电话号码输入屏幕,没有输入字母的选项。有什么想法吗?

似乎表明您可以使用:

android:inputType="number"
去实现你想要的。但我认为这种解决方案的海报可能误解了这个问题,因为我相信“数字”只允许(当然)数字,不允许字母。我目前无法测试这一点,因此我将不得不猜测

或者,您可以有两个EditText用于输入:一个EditText严格数字,另一个纯文本,这样您可以在第一个字段中输入数量,在第二个字段中输入单位。我猜您最终会将输入解析为字符串,在这种情况下,您所要做的就是在解析之前连接文本。

在Java代码中,使用:

edittext.setRawInputType(InputType.TYPE_CLASS_NUMBER);