如何显示Android上的EditText上的数字键盘?
我只是基本上想要切换到数字键盘模式,尽快某个EditText有焦点。
你可以为你的EditText
configuration一个inputType
:
<EditText android:inputType="number" ... />
要在Java文件中执行此操作:
EditText input = new EditText(this); input.setInputType(InputType.TYPE_CLASS_NUMBER);
我发现这个实现有用,显示更好的键盘和限制input字符。
<EditText android:inputType="phone" android:digits="1234567890" ... />
此外,您可以使用android:maxLength
来限制最大数量。
以编程方式执行此操作:
editText.setInputType(InputType.TYPE_CLASS_PHONE); KeyListener keyListener = DigitsKeyListener.getInstance("1234567890"); editText.setKeyListener(keyListener);
<EditText android:layout_width="wrap_content" android:layout_height="wrap_content" ... android:inputType="number|phone"/>
将拨号盘显示为大号。
你可以做2种方法
-
运行时间设置
EditText input = new EditText(this); input.setInputType(InputType.TYPE_CLASS_NUMBER);
-
使用XML
<EditText ... android:inputType="number" />
如果你需要分数,那么这是你的答案:
android:inputType="numberDecimal"
如果您在对话框中使用EditText或dynamic创build,并且不能从xml中设置,那么这个例子将帮助您在使用dynamic编辑文本等时设置这种types的键盘
myEditTxt.setInputType(InputType.TYPE_CLASS_NUMBER);
其中myEditTxt是dynamic的EDIT TEXT对象(名称)
在谷歌网站上find更多的inputtypes和细节
editText.setRawInputType(InputType.TYPE_CLASS_NUMBER);
在你的xml代码中定义这个
android:inputType="number"
在java文件中使用下面的代码
editText.setRawInputType(Configuration.KEYBOARD_QWERTY);