Una notificación es un mensaje que Android muestra fuera de una aplicación para proporcionar actualizaciones, recordatorios y otra información oportuna a los usuarios. En el sistema operativo Android Automotive, una notificación se puede mostrar como notificación directa (HUN) o en el panel de notificaciones (o en ambos). Esta página explica cómo personalizar los HUN.
Figura 1. Notificación
Al anular los valores de configuración que se detallan a continuación, puede personalizar los HUN de dos maneras:
- Posición
- Animación
Al personalizar un HUN, asegúrese de determinar cómo se ve afectado por el orden Z de las barras del sistema. Si el orden Z de una barra del sistema es 10 o superior, aparece encima de los HUN. Por ejemplo, si el HUN se muestra en la parte superior de la pantalla y la barra superior del sistema tiene un orden Z de 10, la barra superior del sistema se muestra encima del HUN a menos que el asistente de animación del HUN esté personalizado para compensar la posición final. del HUN por la altura de la barra superior del sistema.
Documentación relacionada
Para saber cómo y por qué superponer recursos, consulte Superposiciones en Personalización de la interfaz de usuario del sistema.
Para obtener más información sobre las notificaciones, consulte Notificaciones en el sistema operativo Android Automotive en desarrollador.android.com.
config_showHeadsUpNotificationOnBottom
Se puede mostrar un HUN en la parte superior o inferior de la pantalla según el valor de configuración config_showHeadsUpNotificationOnBottom
. Establecido en false
de forma predeterminada, este valor establece la posición final de la notificación en la parte superior de la pantalla.
Figura 2. HUN predeterminado
config_headsUpNotificaciónAnimationHelper
Hay varias formas de cómo la notificación debe aparecer en la pantalla y salir de la pantalla. Se proporciona un conjunto de clases auxiliares de animador predeterminadas que se pueden desactivar anulando config_headsUpNotificationAnimationHelper
.
com.android.car.notification.headsup.animationhelper.CarHeadsUpNotificationTopAnimationHelper
Anima al HUN para que pase de la posición inicial a la posición final, a visible y luego a invisible.
Figura 3. Ayudante de animación superior
com.android.car.notification.headsup.animationhelper.CarHeadsUpNotificationBottomAnimationHelper
Anima al HUN para que pase de la posición inicial a la posición final, a visible y luego a invisible.
Figura 4. Ayudante de animación inferior
com.android.car.notification.headsup.animationhelper.CarHeadsUpNotificationRightAnimationHelper
Anima al HUN para que pase de la posición inicial izquierda a la posición final, a visible y luego a invisible.
Figura 5. Ayudante de animación derecho
Ayudante de animación personalizada
Si se requiere personalización adicional, las clases de ayuda del animador se pueden anular o se puede usar una clase de ayuda del animador personalizada siempre que la clase de ayuda implemente la interfaz HeadsUpNotificationAnimationHelper
como se muestra en este fragmento de código:
[...] public class SampleAnimationHelper implements HeadsUpNotificationAnimationHelper { @Override public AnimatorSet getAnimateInAnimator(Context context, View view) { return (AnimatorSet) AnimatorInflater.loadAnimator( context, R.animator.heads_up_notification_transition_in); } @Override public AnimatorSet getAnimateOutAnimator(Context context, View view) { return (AnimatorSet) AnimatorInflater.loadAnimator( context, R.animator.heads_up_notification_transition_out); } @Override public void resetHUNPosition(View view) { view.setY(-1 * view.getHeight()); view.setAlpha(0); } }