Android 如何弹出“窗口”;?123“;安卓键盘

Android 如何弹出“窗口”;?123“;安卓键盘,android,keyboard,Android,Keyboard,我有一个EditText,它需要根据状态处理数字和/或字母输入。在某些情况下,用户可以输入任何类型的输入。我只能使用setInputType(InputType.TYPE\u CLASS\u NUMBER)弹出“Phone”键盘有效,但不允许用户返回QWERTY键盘。由于大多数输入确实是数字的,所以我想在大多数情况下为用户提供?123键盘。他们只需要返回QWERTY键盘几次 如何弹出屏幕上的QWERTY键盘进行字母输入,如果是数字键盘,如何弹出“?123”键盘?我只想为用户保存一个步骤,这样他们

我有一个EditText,它需要根据状态处理数字和/或字母输入。在某些情况下,用户可以输入任何类型的输入。我只能使用
setInputType(InputType.TYPE\u CLASS\u NUMBER)弹出“Phone”键盘
有效,但不允许用户返回QWERTY键盘。由于大多数输入确实是数字的,所以我想在大多数情况下为用户提供?123键盘。他们只需要返回QWERTY键盘几次

如何弹出屏幕上的QWERTY键盘进行字母输入,如果是数字键盘,如何弹出“?123”键盘?我只想为用户保存一个步骤,这样他们就不必每次都按QWERTY键盘上的?123按钮

更新:这是我想要的键盘。原因是我希望用户能够轻松地在字母输入和数字输入之间切换。无法从“数字键盘”切换到QWERTY键盘。在我的应用程序中,90%的输入都需要数字输入,所以为了方便起见,我想弹出它。换句话说,他们不必在90%的时间里切换到数字键盘,只需在10%的时间里切换到QWERTY即可

调用
input.setRawInputType(配置、键盘)
在蜂窝和更高版本的姜饼上的工作方式不同(显示数字键盘)。在姜饼2.2.3上,它按照我想要的方式工作。蜂窝和2.3.7键盘屏幕抓图如下所示,以供参考。我不知道他们为什么如此不同

我相信这回答了你的问题

简而言之,将此添加到您的代码中:

editText.setRawInputType(Configuration.KEYBOARD_QWERTY);

您可以使用多种方法使用数字键盘。 下面列出了一些

方法1: 将此属性添加到文本字段(EditText)

方法2:

以编程方式使用它

edittext.setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL | InputType.TYPE_NUMBER_FLAG_SIGNED);

可能是重复的感谢,但这篇文章似乎涉及数字键盘。有一个投票率很高的答案是:“.也允许你输入自由文本。”但我不知道你在哪里这么做。键盘上没有用于执行此操作的按钮。请看我的问题的更新。希望能澄清。请注意,许多手机将有不同的键盘。例如,三星手机默认使用Swype,或者你可以从市场上下载键盘。这是一个很好的观点,但定制键盘需要实现与“库存”键盘相同的功能。如果Android实现了类似于
input.setRawInputType(Configuration.KEYBOARD_u123)的方法和一个自定义应用程序不支持,这只是打破。它应该会觉得破了。谢谢,我试过了。它似乎只做了我想在2.2.3。在3.2和2.3.7中,它会显示“数字键盘”,而不是“?123”键盘。隐马尔可夫模型。。
edittext.setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL | InputType.TYPE_NUMBER_FLAG_SIGNED);