Tengo un edittext
en el que quiero que solo se inserten valores enteros. ¿Alguien puede decirme qué propiedad tengo que usar?
android
android-edittext
Sourabh
fuente
fuente
android:inputType="phone"
en lugar de eso. Pero parece un poco más "ocupado".Por ejemplo:
fuente
0123456789.
y no0123456780.
En código, podrías hacer
fuente
Para ingresar solo dígitos, use
android:inputType="numberPassword"
junto coneditText.setTransformationMethod(null);
para eliminar la ocultación automática del número.O
android:inputType="phone"
Solo para la entrada de dígitos, creo que estas dos formas son mejores que
android:inputType="number"
. La limitación de mencionar "número" como inputType es que el teclado permite cambiar a caracteres y también permite ingresar otros caracteres especiales. "numberPassword" inputType no tiene esos problemas ya que el teclado solo muestra dígitos. Incluso el tipo de entrada "teléfono" funciona ya que el teclado no le permite cambiar a caracteres. Pero aún puede ingresar un par de caracteres especiales como +, /, N, etc.android: inputType = "numberPassword" con editText.setTransformationMethod (nulo);
inputType = "teléfono"
inputType = "número"
fuente
android:inputType="numberPassword"
junto coneditText.setTransformationMethod(null);
fuente
fuente
usar lo siguiente puede resolver su problema mejor;
en xml:
o // en actividad dentro de etfield.addtextchangelistener
fuente
Si alguien quiere usar solo el número del 0 al 9 con
imeOptions
habilitar, use la línea de abajo en suEditText
Esto solo permitirá el número y si hace clic en el botón Listo / Siguiente del teclado, su enfoque se moverá al siguiente campo.
fuente
Puedes usarlo en XML
o,
o,
Programáticamente puede usar
editText.setInputType (InputType.TYPE_CLASS_NUMBER);
fuente
Necesito atrapar presionando Enter en un teclado con TextWatcher . Pero descubrí que todos los teclados numéricos android: inputType = "number" o "numberDecimal" o "numberPassword", etc.no me permiten atrapar Enter cuando el usuario lo presiona.
Lo intenté
android:digits="0123456789\n"
y todos los teclados numéricos comenzaron a funcionar con Enter y TextWatcher.Entonces mi camino es:
más
editText.setTransformationMethod(null)
Gracias a barmaley y abhiank.
fuente
No sé cuál fue la respuesta correcta en el '13, pero hoy es:
myEditText.setKeyListener(DigitsKeyListener.getInstance(null, false, true)); // positive decimal numbers
Obtiene todo, incluso el teclado en pantalla es un teclado numérico.
Casi todo. El espresso, en su sabiduría infinita, deja
typeText("...")
pasar el filtro inexplicablemente y entra en la basura ...fuente
lo mas simple para mi
aunque esto también se personaliza más
fuente