¿No se muestran los indicadores de error (para validaciones de formularios) para android 4.2?

Fondo

En Android, puede establecer una indicación de error para cualquier vista de EditarTexto cuando desee mostrar al usuario que lo que se escribe allí (o no) es incorrecto (llamado "validaciones de formulario").

Hay incluso una bonita biblioteca para esto ( aquí ), y muchos puestos aquí están disponibles de cómo usarlo.

Todo funcionó bien para mí hasta que lo he corrido en un nexo 4 con Android 4.2.

El problema

A veces, simplemente no mostrará los iconos de los errores. En tal caso, sólo cuando doy el foco de editText (que tiene el problema), muestra la burbuja, pero está vacía y no muestra el icono del error.

Además, en todos los casos, las burbujas están siempre vacías.

¿Por qué ocurre, y cómo puedo solucionarlo?

Nota: Utilizo la biblioteca de actionBarSherlock así que necesito utilizar sus temas o un tema que se basa en el suyo.


EDITAR:

Aquí hay algunas capturas de pantalla:

Android 4.2.2:

Introduzca aquí la descripción de la imagen

Android 2.3.5:

Introduzca aquí la descripción de la imagen


EDITAR:

Después de pensar que esto se resolvió por sí mismo, finalmente he descubierto cuando se produce este error: si el foco está en otro editText que no tiene un error, y el error de validación está en otro editText, el indicador isn ' T se muestra hasta que el editText obtiene el foco.

Problema 1: El problema es el tema de la aplicación . Intente cambiar el tema a un tema más oscuro como:

<style name="AppBaseTheme" parent="android:Theme.Black"> 

Y debe resolver su problema. Encontré este problema similar antes y rectificé esto cambiando el tema. Pero no investigue mucho, pero siento que se trata de Android cuestión y la burbuja debe tratar de cambiar el color de texto de acuerdo con el tema.

Déjeme saber si soluciona su problema, o no.

Problema 2: La otra cuestión que está hablando para no tomar el foco, puede considerar el siguiente enlace: Truncamiento de texto y problema de enfoque .

—————————————- Actualizado Respuesta ——– ————————————-

 Q1) What should I add to the theme configuration in order for it to always work, no matter what theme I use? 

De acuerdo con mis conclusiones aquí hay algunos resultados:

[ Nota: Únicamente aplicable a dispositivos que ejecutan 3.0 y versiones posteriores]

Si su meta de compilación es:

  • Menos de 11, y luego usar

     parent="android:Theme.Light" --> setError() message doesn't work or shows very faded text colour almost blending with color white parent="android:Theme" --> setError() message works 
  • Mayor de 11, y luego usar

     parent="android:Theme.Holo.Light" --> setError() message works parent="android:Theme.Holo" --> setError() message works 

Dado que, su proyecto es compatible con dispositivos de menos de 11 API nivel y desea apoyar 4.0 y más también, su mejor opción sería ir e integrar HoloEverywhere en su proyecto que va a resolver su problema y usted será capaz de utilizar su ActionBarSherlock También, por compatibilidad, compruebe este SO Post .

 Q2) What are the available configurations for the error indication UI ? 

En su mayoría se puede personalizar drawables e iconos, pero dudo que pueda configurar su texto y fondo (si alguien sabe más puede señalar sobre esto)

Le sugeriría que compruebe este SO Post para obtener respuestas inmediatas.

Y para colocar el enfoque correcto, para cada verificación de validación, puede colocar este código:

 EditText.setFocusableInTouchMode(true); EditText.requestFocus(); EditText.setError("My Error Text"); 

Déjeme saber para cualquier problema.

  • ¿Cómo validar una cadena usando java regex?
  • Cómo validar el código ussd para la comprobación del saldo
  • ¿Cómo mostrar errores de entrada en popup?
  • Mostrar error si el usuario introduce sólo espacios en EditText - Android
  • Centrarse en segundo edittext sólo si primero es no-vacío android
  • Android manual X509 validación de la cadena de certificados
  • Cómo cambiar la contraseña usando la contraseña antigua en el análisis de android
  • ¿Cómo determinar si una entrada en EditText es un entero?
  • Android webView: Es posible configurar el teclado numérico primero por defecto cuando se usa input type = text
  • RxJava- validación de formulario RxAndroid en dynamic EditText
  • Android: validar contraseña, conformar contraseña y pasar un valor de cadena a través de botón
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.