Tengo un formulario de registro que debo validar antes de enviarlo. El formulario tiene los siguientes campos: nombre, correo electrónico, número de contacto y contraseña. Necesito el nombre para tener un valor, el correo electrónico para tener el formato correcto, el número de contacto debe ser un número de al menos 10 números y la contraseña debe tener al menos 6 caracteres.cómo hacer la validación de formulario en android
Respuesta
tiene dos posibilidades:
- escuchar a cambios en el contenido y la ejecución de validación del campo de ese campo específico o
- escuchar el clic botón de enviar y validar el contenido de todos los campos en enviar.
La validación de Else es la misma que en cualquier otra aplicación de Java: simplemente pruebe sus limitaciones.
BTW: su pregunta ya era answered en stackoverflow.
para la validación de edittext, use android: inputtype, android: maxLength.
Aparte de esto, puede utilizar expresiones regulares para la validación de la forma
probar esto
vUsername = etUsername.getText().toString();
vFirstname = etFirstname.getText().toString();
vEmail = etEmail.getText().toString();
vPwd = etPwd.getText().toString();
vCpwd = etCpwd.getText().toString();
if("".equalsIgnoreCase(vUsername) //vUsername.equalsIgnoreCase("") could lead to NPE
|| "".equalsIgnoreCase(vFirstname)
|| "".equalsIgnoreCase(vEmail)
|| "".equalsIgnoreCase(vPwd)
|| "".equalsIgnoreCase(vCpwd))
{
Toast.makeText(userRegistration.this, "All Fields Required.",
Toast.LENGTH_SHORT).show();
}
checkemail(vEmail);
if(emailcheck==true)
{
// your code here
}
public void checkemail(String email)
{
Pattern pattern = Pattern.compile("[email protected]+\\.[a-z]+");
Matcher matcher = pattern.matcher(email);
emailcheck = matcher.matches();
}
Alternativamente, se puede utilizar un validation library para realizar validaciones en Android. Se controla mediante anotación y, por lo tanto, reduce un gran número de código de placa de caldera. Su caso de uso cuando se resuelve utilizando esta aplicación podría tener el siguiente aspecto:
@Required(order = 1)
@Email(order = 2)
private EditText emailEditText;
@Password(order = 3)
@TextRule(order = 4, minLength = 6, message = "Enter at least 6 characters.")
private EditText passwordEditText;
@ConfirmPassword(order = 5)
private EditText confirmPasswordEditText;
@Checked(order = 6, message = "You must agree to the terms.")
private CheckBox iAgreeCheckBox;
Hay una escasez de documentación, pero ahora el ejemplo de anotación en el home page debe empezar. También puede leer this blog sobre cómo crear reglas personalizadas en caso de que las reglas de stock no se ajusten a sus necesidades.
PD: Yo soy el autor de esta biblioteca.
por alguna razón, el error en el primer texto de edición no se borra - ¿Alguna idea? – jramoyo
@jramoyo, creo que esto está relacionado específicamente con la versión de Android y no con el marco. He encontrado comentarios similares anteriormente y descubrimos que no tiene nada que ver con el marco en sí. ¿Podría decirme por favor en qué versión de Android está probando esto? –
He probado esto en 4.2, 4.1 y 2.3. Aparte de 4.2, el error desaparece cuando presiono la tecla de retroceso – jramoyo
Puede usar la API de validación de Android predeterminada.
Aquí hay un tutorial muy simple: http://blog.donnfelker.com/2011/11/23/android-validation-with-edittext/
La clave es usar el método setError
en su EditText
. Activará la IU de validación por defecto con el texto de error proporcionado.
Gracias por el consejo. – Aerilys
- 1. Validación de formulario de Django: ¿hacer condicional "requerido"?
- 2. Extendiendo la validación de formulario en Codeigniter
- 3. Formulario de validación y ayudante de formulario
- 4. Validación de formulario
- 5. Zend formulario de validación
- 6. Validación de formulario en línea en Django
- 7. JQuery - Validación de formulario - Onblur
- 8. ¿Cómo elimino la validación de jQuery de un formulario?
- 9. MVC Validación de formulario en varios campos
- 10. Django y la validación del formulario personalizado
- 11. IP prohibidas en la validación de formulario de Django
- 12. Codeigniter: ¿Cómo crear un formulario de edición que use la validación de formulario y la repoblación?
- 13. Symfony2: Cómo modificar un valor formulario antes de la validación
- 14. Codeigniter: Cómo redirigir correctamente con la validación de formulario
- 15. validación XMLSchema en Android
- 16. Validación de formulario HABTM en CakePHP
- 17. Como hacer un formulario de Django retener un archivo después de fallar la validación
- 18. Omitir la validación de formulario en el botón de comando
- 19. Cómo personalizar los errores de validación de formulario en codeIgniter
- 20. anular CSS para la validación de formulario html5/requerida popup
- 21. jquery validación de formulario de múltiples pasos
- 22. Validación de formulario usando jQuery-Ajax
- 23. Cómo no enviar un formulario si la validación es falsa
- 24. Cómo comprobar si la validación del formulario html5 está completa
- 25. Formulario de validación sin Doctrine Entity
- 26. etiqueta de formulario de validación html5
- 27. validación de formulario de suscripción de PHP
- 28. ¿Cómo hacer un formulario HTML en gris?
- 29. Django Validación de formulario de Javascript
- 30. Formulario no enviado con la validación de jQuery
busque en el sitio "validación de entrada" seleccione cualquiera de las miles de respuestas – Eric
De acuerdo con @Shashank_Itmaster y para limitar al usuario a un número particular de caracteres en 'EditText' puede usar el atributo [android: maxLength] (http : //developer.android.com/reference/android/widget/TextView.html#attr_android: maxLength). – Mudassir