Uma notificação é uma mensagem que o Android exibe fora de um aplicativo para fornecer atualizações, lembretes e outras informações oportunas aos usuários. No sistema operacional Android Automotive, uma notificação pode ser exibida como uma notificação de alerta (HUN) ou no painel Notificação (ou em ambos). Esta página explica como personalizar HUNs.
Figura 1. Notificação
Ao substituir os valores de configuração detalhados abaixo, você pode personalizar HUNs de duas maneiras:
- Posição
- Animação
Ao personalizar um HUN, certifique-se de determinar como ele é afetado pela ordem Z das barras do sistema. Se a ordem Z de uma barra do sistema for 10 ou superior, ela aparecerá no topo dos HUNs. Por exemplo, se o HUN for exibido na parte superior da tela e a barra superior do sistema tiver uma ordem Z de 10, a barra superior do sistema será exibida na parte superior do HUN , a menos que o auxiliar de animação do HUN seja personalizado para compensar a posição final do HUN pela altura da barra superior do sistema.
Documentação relacionada
Para saber como e por que sobrepor recursos, consulte Sobreposições em Personalização da UI do sistema.
Para saber mais sobre notificações, consulte Notificações no Android Automotive OS em developer.android.com.
config_showHeadsUpNotificationOnBottom
Um HUN pode ser exibido na parte superior ou inferior da tela com base no valor de configuração config_showHeadsUpNotificationOnBottom
. Definido como false
por padrão, esse valor define a posição final da notificação na parte superior da tela.
Figura 2. HUN padrão
config_headsUpNotificationAnimationHelper
Existem várias maneiras de como a notificação deve aparecer na tela e sair da tela. Um conjunto de classes auxiliares de animador padrão é fornecido e pode ser desativado substituindo config_headsUpNotificationAnimationHelper
.
com.android.car.notification.headsup.animationhelper.CarHeadsUpNotificationTopAnimationHelper
Anima o HUN para fazer a transição da posição inicial até a posição final, para visível e depois para invisível.
Figura 3. Auxiliar de animação superior
com.android.car.notification.headsup.animationhelper.CarHeadsUpNotificationBottomAnimationHelper
Anima o HUN para fazer a transição da posição inicial para a posição final, para visível e depois para invisível.
Figura 4. Auxiliar de animação inferior
com.android.car.notification.headsup.animationhelper.CarHeadsUpNotificationRightAnimationHelper
Anima o HUN para fazer a transição da posição inicial esquerda para a posição final, para visível e depois para invisível.
Figura 5. Auxiliar de animação direito
Auxiliar de animação personalizado
Caso seja necessária personalização adicional, as classes auxiliares do animador podem ser substituídas ou uma classe auxiliar do animador personalizada pode ser usada, desde que a classe de ajuda implemente a interface HeadsUpNotificationAnimationHelper
conforme mostrado neste trecho 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); } }