我有一个 EditText,它需要根据状态处理数字和/或字母输入。在某些情况下,用户可以输入任一类型的输入。我只能使用 setInputType (InputType.TYPE_CLASS_NUMBER);
弹出“电话”键盘,这有效,但不允许用户返回 QWERTY 键盘。由于大多数输入确实是数字,所以我想在大多数时间向用户显示 ?123 键盘。他们只需要返回 QWERTY 键盘几次。
如何让输入字母时弹出屏幕QWERTY键盘,输入数字时弹出“?123”键盘?我只想为用户节省一个步骤,这样他们就不必每次都按 QWERTY 键盘上的 ?123 按钮。
更新:这是我希望可见的键盘。原因是我希望用户可以轻松地在字母输入和数字输入之间切换。无法从“数字键盘”切换到 QWERTY 键盘。在我的应用程序中,90% 的输入都需要数字输入,因此我想将其弹出以方便使用。换句话说,他们不必在 90% 的时间切换到数字键盘,他们只需要在 10% 的时间切换到 QWERTY
对 input.setRawInputType(Configuration.KEYBOARD_QWERTY);
的调用在 Honeycomb 和更高版本的 Gingerbread(调出数字键盘)上的工作方式不同。在 Gingerbread 2.2.3 上,它按我想要的方式工作。 Honeycomb 和 2.3.7 键盘屏幕截图如下,供引用。我不知道为什么它们如此不同。
最佳答案
您可以通过多种方式使用数字键盘。 下面列出了一些,
方法一: 将此属性添加到您的文本字段(EditText)
android:inputType="number"
方法二:
以编程方式使用它
edittext.setInputType(InputType.TYPE_CLASS_NUMBER | InputType.TYPE_NUMBER_FLAG_DECIMAL | InputType.TYPE_NUMBER_FLAG_SIGNED);
关于android - 如何弹出 "?123"Android键盘,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10489239/