I've come across this while doing work on creating my own Keyboard
but can't for the life of me remember where I ran across it.
I want top open the Numeric keyboard. However, I want my EditText
to only accept an IP address. Adding a filter to my EditText
wasn't too hard thanks to this answer.
However, now I want to make the Numeric keyboard to open rather than the standard text keyboard. Unfortunately search results are saturated with the same "How do you limit EditText
to numeric input?" questions over and over.
Could anyone point me to the right place for manually opening the Numeric Keyboard.
Not sure if this is the best solution, but I use android:inputType="phone"
.
8 days late but alrighty!
android:inputType="number"
works for me. Of course Glitch's answer might be better given that not all keyboards have a numeric input style. And of course you'll still have to validate it
Adding to the existing solution, if you want to restrict to just numbers and dots, you can add
android:digits="0123456789."
to the xml of the EditText. So combining the current solution and the above:
android:inputType="phone"
android:digits="0123456789."
will make sure you are able to just put IP address related stuff in the EditText. Now, when the keyboard comes up it has the T9 letters on the keys, but that's a function of the "phone" inputType. Also, you'll have to make sure it's a valid IP after entry.
or you can also go for
editext ss;
ss.setInputType(InputType.TYPE_CLASS_NUMBER);
来源:https://stackoverflow.com/questions/8476490/open-a-numeric-keyboard-without-forcing-the-edittext-to-be-numeric-only