Una notifica è un messaggio che Android mostra all'esterno di un'app per fornire aggiornamenti, promemoria e altre informazioni tempestive agli utenti. Nel sistema operativo Android Automotive, una notifica può essere visualizzata come notifica in primo piano (HUN) o nel riquadro delle notifiche (o in entrambi). Questa pagina spiega come personalizzare gli HUN.
Figura 1. Notifica
Sostituendo i valori di configurazione descritti di seguito, puoi personalizzare gli HUN in due modi:
- Posizione
- Animazione
Quando personalizzi un HUN, assicurati di determinare in che modo è interessato dall'ordine Z delle barre di sistema. Se l'ordine Z di una barra di sistema è pari o superiore a 10, viene visualizzata sopra i HUN. Ad esempio, se l'HUN viene visualizzato nella parte superiore dello schermo e la barra di sistema superiore ha un ordine Z pari a 10, la barra di sistema superiore viene visualizzata sopra l'HUN a meno che l'helper di animazione HUN non sia personalizzato per compensare la posizione finale dell'HUN con l'altezza della barra di sistema superiore.
Documentazione correlata
-
Per scoprire come e perché sovrapporre le risorse, consulta la sezione Sovrapposte in Personalizzazione dell'interfaccia utente di sistema.
-
Per scoprire di più sulle notifiche, consulta Notifiche su Android Automotive OS su developer.android.com.
config_showHeadsUpNotificationOnBottom
Un HUN può essere visualizzato nella parte superiore o inferiore dello schermo in base al valore di configurazione config_showHeadsUpNotificationOnBottom
.
Impostato su false
per impostazione predefinita, questo valore imposta la posizione finale della notifica nella parte superiore dello schermo.
Figura 2. HUN predefinito
config_headsUpNotificationAnimationHelper
Esistono diversi modi in cui la notifica deve apparire sullo schermo e uscirne. È fornito un insieme di classi di assistenza per gli animatori predefinite che possono essere sostituite sostituendo config_headsUpNotificationAnimationHelper
.
com.android.car.notification.headsup.animationhelper.CarHeadsUpNotificationTopAnimationHelper
Anima l'HUN per passare dalla posizione iniziale a quella finale, da visibile a invisibile.
Figura 3. Assistente all'animazione di primo livello
com.android.car.notification.headsup.animationhelper.CarHeadsUpNotificationBottomAnimationHelper
Anima l'HUN per passare dalla posizione iniziale a quella finale, da visibile a invisibile.
Figura 4. Assistente animazione in basso
com.android.car.notification.headsup.animationhelper.CarHeadsUpNotificationRightAnimationHelper
Anima l'HUN per passare dalla posizione iniziale a sinistra, alla posizione finale, a visibile e poi a invisibile.
![]() |
![]() |
Figura 5. Assistente animazione a destra
Assistente per l'animazione personalizzata
Se è necessaria una personalizzazione aggiuntiva, le classi di assistenza dell'animatore possono essere sostituite o è possibile utilizzare una classe di assistenza dell'animatore personalizzata, a condizione che la classe di assistenza implementi l'interfaccia HeadsUpNotificationAnimationHelper
come mostrato in questo snippet di codice:
[...] 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); } }