打开数字键盘而不强制EditText仅为数字

时间:2011-12-12 15:17:08

标签: android android-keypad

我在创建自己的Keyboard时遇到过这个问题,但在我的生活中无法记住我遇到过它的地方。

我想要打开数字键盘。但是,我希望我的EditText只接受IP地址。由于this answer,我的EditText添加了一个过滤器并不太难。

但是,现在我想打开数字键盘而不是标准文本键盘。不幸的是,搜索结果已经饱和了“如何限制EditText到数字输入?”问题一遍又一遍。

有人能指出我正确的位置来手动打开数字键盘。

4 个答案:

答案 0 :(得分:2)

不确定这是否是最佳解决方案,但我使用android:inputType="phone"

答案 1 :(得分:2)

晚了8天但还好!

android:inputType="number"

适合我。当然,假设并非所有键盘都具有数字输入样式,Glitch的答案可能会更好。当然,你仍然需要验证它

答案 2 :(得分:2)

添加到现有解决方案,如果您想限制数字和点,您可以添加

android:digits="0123456789."

到EditText的xml。所以结合当前的解决方案和上面的方法:

android:inputType="phone"
android:digits="0123456789."

将确保您能够只是在EditText中放置与IP地址相关的内容。现在,当键盘出现时,键上有T9字母,但这是“phone”inputType的功能。此外,您必须在输入后确保它是有效的IP。

答案 3 :(得分:0)

或者你也可以去

editext ss;
ss.setInputType(InputType.TYPE_CLASS_NUMBER);