Cómo establecer sólo un valor numérico para edittext en android?
Tengo un edittext
en el que sólo quiero valores enteros para ser insertado. ¿Puede alguien decirme qué propiedad tengo que usar?
- Haga que EditText crezca a medida que se llena
- EditText cursor en la posición superior izquierda.
- Android: Edittext con centro de gravedad que no funciona en el dispositivo
- Problema con SQLite DB para Android
- Android cómo configurar el cursor EditText al final de su texto
- EditText cursor y color del puntero para debajo de android 5.0
- Editor simple de RichText en Android
- Android: ¿Cómo puedo recuperar Edittext.getText () en AlertDialog personalizado?
- Selected Item of Autocomplete Textview Mostrar como simple Textview?
- ¿Hay alguna manera de definir un valor mínimo y máximo para EditText en Android?
- Abrir EditTextPreference a través del código (programatically)
- Android Problema: EditText, KeyListener y el botón físico anterior
- Android: singleline = true no funciona para edittext
Supongo que android:inputType="number"
en los atributos xml.
En código, usted podría hacer
ed_ins.setInputType(InputType.TYPE_CLASS_NUMBER);
Por ejemplo, como aquí:
<EditText android:id="@+id/myNumber" android:digits="0123456789." android:inputType="numberDecimal" />
Para la entrada de sólo dígitos use android:inputType="numberPassword"
junto con editText.setTransformationMethod(null);
Para eliminar la ocultación automática del número.
O
android:inputType="phone"
Para solo ingresar dígitos, siento que estas formas de pareja 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 que otros caracteres especiales sean ingresados. "NumberPassword" inputType no tiene esos problemas, ya que el teclado sólo muestra dígitos. Incluso "phone" inputType funciona como el teclado no le permite cambiar a los caracteres. Pero todavía puede ingresar caracteres especiales como +, /, N, etc.
Android: inputType = "numberPassword" con editText.setTransformationMethod (null);
InputType = "teléfono"
InputType = "número"
android:inputType="numberDecimal"
<EditText android:id="@+id/age" android:numeric="integer" />
Utilizando el siguiente puede resolver mejor su problema;
En xml:
<EditText android:id="@+id/age" android:inputType="numberDecimal|numberSigned" />
O // en actividad dentro de etfield.addtextchangelistener
private String blockCharacterSet="+(/)N,*;#";//declare globally try { for (int i = 0; i < s.length(); i++) { if (blockCharacterSet.contains(s.charAt(i) + "")) { String corrected_settempvalue = arrivalsettemp.substring(0, arrivalsettemp.length() - 1); et_ArrivalSetTemp.setText(corrected_settempvalue); if (corrected_settempvalue.length() != 0) et_ArrivalSetTemp.setSelection(corrected_settempvalue.length()); } } } catch (Exception d) { d.printStackTrace(); }
Si alguien quiere utilizar sólo el número de 0 a 9 con imeOptions
habilitar a continuación, utilice debajo de la línea en su EditText
Android: inputType = "número | ninguno"
Esto sólo permitirá el número y si hace clic en el botón hecho / siguiente del teclado su enfoque se moverá al siguiente campo.
El mas simple para mi
android:numeric="integer"
Aunque esto también más personalizar
android:digits="0123456789"
- Android comprobar la conexión a Internet
- ¿Cómo puedo detectar cuándo se ejecuta una aplicación de Android en el emulador?