2011-02-08 3 views
8

Quiero especificar que Android debe iniciar el teclado virtual para un EditText dado en el modo numérico/símbolos. Sé que esto se puede hacer estableciendo el tipo de entrada de EditText para que sea numérico usando EditText.setInputType() excepto que no quiero restringir el tipo de entrada para EditText a la entrada numérica solamente **. ¿Hay alguna otra forma de decirle a Android qué teclado debería abrir para un determinado EditText?android: comienza en el modo de teclado de símbolos, pero no restrinja la entrada de solo números

** Quiero esencialmente una clase matemática de entrada numérica, aceptando expresiones matemáticas arbitrarias, incluyendo [0,9. + -/*() @:].

+0

Casi la misma pregunta: http://stackoverflow.com/questions/25219855/how-to-show-android-keyboard-with-symbols-mode-by-default – OneWorld

Respuesta

-3

Creo que la magia está en:

editText.setInputType(InputType.TYPE_CLASS_NUMBER); 
+2

Estoy bastante seguro de que esto hace que la entrada acepte solo dígitos Lo verificaré, sin embargo. – Bee

+1

SetInputType & SetRawInputType restringe la entrada que la pregunta específicamente indicó que no querían hacer. – AlanKley

-2

Después de algunos lotes de investigación y tratando de cosas diferentes, he encontrado la respuesta:

editField.setRawInputType(InputType.TYPE_CLASS_NUMBER); 
//   ^^^ note the Raw! 

por lo que necesita la versión Raw de establecer el tipo de entrada para evitar un KeyListener que se está configurando, lo que restringe la entrada.

+3

SetInputType & SetRawInputType restringe la entrada que la pregunta específicamente indicó que no querían hacer – AlanKley

Cuestiones relacionadas