Croutons no mostrando de vez en cuando
Tengo el cajón de navegación oficial en mi aplicación. Al hacer clic en los elementos del cajón se abren nuevos Fragmentos en la parte de contenido de la pantalla. Cada Fragmento contiene FrameLayout
con el mismo id que se utiliza para mostrar un Crouton.
El uso básico es que se muestra un Crouton infinito cuando el usuario hace clic en el botón de actualización en la barra de acciones (notificando acerca de la actualización en curso). Una vez finalizada la actualización, se muestra otro recorte (reemplazando el anterior). En algunos casos, los Croutons se muestran incluso después de ingresar una pantalla (y se reemplazan cuando se activa la actualización).
- Android Studio gradle y las bibliotecas de importación
- Notificación como whatsapp o sms app android
- Configuración de la duración de los mensajes de Crouton en Android
- No puedo acceder a la biblioteca de Crouton en Eclipse
- Crouton CustomView con duración infinita
El problema que estoy experimentando es un poco difícil de describir. Algunos croutons no se muestran de vez en cuando. Por lo general sucede cuando conmuto entre pantallas (el Crouton inicial no se muestra o el Crouton no se muestra cuando presiono el botón de refresco por primera vez en esa pantalla – sin embargo, se muestra cuando se termina la actualización y cuando presiono el botón de actualización después) .
Así que es bastante impredecible. Incluso hay casos, cuando la pantalla no muestra el Crouton en absoluto hasta que cambie a otra pantalla y viceversa.
Para mostrar Croutons, utilizo esto en el diseño de cada Framgnet:
<FrameLayout android:id="@+id/crouton_view" android:layout_width="match_parent" android:layout_height="@dimen/crouton_height" android:layout_alignParentTop="true" />
En el código tengo la clase de CroutonBuilder con los siguientes métodos:
public static Crouton getNewLastUpdateCrouton(Activity activity, boolean infinite, String plateNumber) { String lastUpdateString = ...; Crouton newCrouton = Crouton.makeText(activity, lastUpdateString, CroutonBuilder.getLastUpdate(activity), R.id.crouton_view); if (infinite) { newCrouton.setConfiguration(new Configuration.Builder().setDuration( Configuration.DURATION_INFINITE).build()); } return newCrouton; }
Y luego simplemente llame. .show()
en el Crouton devuelto. Cuando depuro y paso a través, el método show()
se llama, pero a veces simplemente no se muestra nada.
¿Tienes alguna idea de lo que estoy haciendo mal?
- Android: Crouton lib y fuente personalizada
- Crouton + SlidingMenu se superponen
- ¿Por qué los estilos de corte personalizado aparecen en gris en lugar del color especificado?
- Crouton depende de las bibliotecas, pero no es una biblioteca en sí
- ¿Cómo puedo generar un crouton Android desde la parte inferior?
Me enteré de Croutons dejó de aparecer cuando dejé un fragmento mientras un Crouton se muestra actualmente. Llamar a Crouton.cancelAllCroutons()
en onPause()
ayudó.