Une notification est un message qu'Android affiche en dehors d'une application pour fournir des mises à jour, des rappels et d'autres informations opportunes aux utilisateurs. Dans le système d'exploitation Android Automotive, une notification peut être affichée soit sous forme de notification tête haute (HUN) , soit dans le panneau de notification (ou dans les deux). Cette page explique comment personnaliser les HUN.
Figure 1. Notification
En remplaçant les valeurs de configuration détaillées ci-dessous, vous pouvez personnaliser les HUN de deux manières :
- Position
- Animation
Lors de la personnalisation d'un HUN, veillez à déterminer comment il est affecté par l'ordre Z des barres système. Si l'ordre Z d'une barre système est de 10 ou plus, elle apparaît au-dessus des HUN. Par exemple, si le HUN est affiché en haut de l'écran et que la barre système supérieure a un ordre Z de 10, la barre système supérieure est affichée au-dessus du HUN , sauf si l'assistant d'animation du HUN est personnalisé pour décaler la position finale. du HUN par la hauteur de la barre supérieure du système.
Documentation associée
Pour savoir comment et pourquoi superposer des ressources, consultez Superpositions dans Personnalisation de l'interface utilisateur du système.
Pour en savoir plus sur les notifications, consultez Notifications sur le système d'exploitation Android Automotive sur Developer.android.com.
config_showHeadsUpNotificationOnBottom
Un HUN peut être affiché en haut ou en bas de l'écran en fonction de la valeur de configuration config_showHeadsUpNotificationOnBottom
. Défini sur false
par défaut, cette valeur définit la position finale de la notification en haut de l'écran.
Figure 2. HUN par défaut
config_headsUpNotificationAnimationHelper
Il existe plusieurs façons dont la notification doit apparaître à l'écran et quitter l'écran. Un ensemble de classes d'assistance d'animateur par défaut est fourni et peut être désactivé en remplaçant config_headsUpNotificationAnimationHelper
.
com.android.car.notification.headsup.animationhelper.CarHeadsUpNotificationTopAnimationHelper
Anime le HUN pour passer de la position initiale à la position finale, à visible, puis à invisible.
Figure 3. Assistant d'animation supérieur
com.android.car.notification.headsup.animationhelper.CarHeadsUpNotificationBottomAnimationHelper
Anime le HUN pour passer de la position initiale à la position finale, au visible, puis à l'invisible.
Figure 4. Assistant d'animation inférieur
com.android.car.notification.headsup.animationhelper.CarHeadsUpNotificationRightAnimationHelper
Anime le HUN pour passer de la position initiale à gauche à la position finale, au visible, puis à l'invisible.
Figure 5. Assistant d'animation de droite
Assistant d'animation personnalisé
Si une personnalisation supplémentaire est requise, les classes d'assistance d'animateur peuvent être remplacées ou une classe d'assistance d'animateur personnalisée peut être utilisée à condition que la classe d'aide implémente l'interface HeadsUpNotificationAnimationHelper
comme indiqué dans cet extrait de code :
[...] 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); } }