Cómo asegurarme de obtener un número entero de un EditText
Frecuentes
Visto 279 veces
0
Tengo este codigo:
EditText value = ( EditText )findViewById( R.id.editbox );
Integer int_value = Integer.valueOf( value.getText().toString() );
Funciona muy bien cuando hay un número en EditText, pero FC mi aplicación cuando está vacía o tiene texto, etc.
¿Cómo puedo asegurarme de que int_value tiene/son un número? También probé parseInt pero con el mismo resultado.
5 Respuestas
4
add android:inputType="number"
en tu EditText
declaración en su archivo xml.
Respondido el 12 de junio de 12 a las 12:06
3
try {
Integer int_value = Integer.parseInt(value.getText().toString());
} catch (NumberFormatException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Respondido el 12 de junio de 12 a las 12:06
1
Cuando una cadena que no se puede analizar se sirve como entrada para Integer
's valueOf
, lanza un NumberFormatException
. Simplemente rodéelo con un try catch
bloque para manejar tales casos:
Integer int_value = null;
try {
int_value = Integer.valueOf(value.getText().toString());
} catch (NumberFormatException e) {
// here you can handle the case where the text wasn't an integer
}
// carry on...
Respondido el 12 de junio de 12 a las 12:06
0
establezca inputType="number" en xml y compruebe si hay un valor vacío en el código
if(!"".equals(value.getText().trim()) && value.getText().trim()!= null) {
//sure, input is not empty and is a number.
}
Respondido el 12 de junio de 12 a las 12:06
0
Prueba con esto
editText.setOnFocusChangeListener(new OnFocusChangeListener(){
@Override
public void onFocusChange(View v,boolean hasFocus)
{
//check for emptiness
if(editText.length()==0)
{
editText.setError(error_required);
}
else if(!numberValidation(editText.getText().toString()))
{
editText.setError("Only Numbers");
}
}
}
);
En main.xml agregar,
EditText tag, android:numeric="integer/number/decimal"
Respondido el 12 de junio de 12 a las 12:06
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas android or haz tu propia pregunta.
Esto solo resuelve uno de los problemas. Si EditText está vacío, esto no ayudará en absoluto. - Espen
Si está vacío, ¿cómo obtendrá los valores del texto de edición? - Vineet Shukla