Uma notificação é uma mensagem que o Android mostra fora de um app para mostrar atualizações, lembretes e outras informações oportunas aos usuários. No Android Automotive OS, um pode ser exibida como uma notificação de alerta (HUN, na sigla em inglês) ou no Painel de notificações (ou em ambos). Esta página explica como personalizar as HUNs.
Figura 1. Notificação
Ao substituir os valores de configuração detalhados abaixo, é possível personalizar as HUNs de duas maneiras:
- Cargo
- Animação
Ao personalizar uma HUN, certifique-se de determinar como ela é afetada pela ordem Z de barras de sistema. Se a ordem Z de uma barra do sistema for 10 ou superior, ela aparecerá sobre as HUNs. Por exemplo, se a HUN for exibida na parte superior da tela a barra de sistema tem uma ordem Z de 10, a barra de sistema superior é exibida na parte superior da HUN a menos que o assistente de animação da HUN seja personalizado para deslocar 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 "Personalizar a interface do sistema".
-
Para saber mais sobre as notificações, consulte Notificações no Android Automotive OS em developer.android.com.
config_showHeadsUpNotificationOnBottom
Uma HUN pode ser mostrada na parte de cima ou de baixo da tela com base
no valor de configuração config_showHeadsUpNotificationOnBottom
.
Se definido como false
por padrão, esse valor define a posição final do
notificação na parte superior da tela.
Figura 2. HUN padrão
config_headsUpNotificationAnimationHelper
Há várias maneiras de a notificação aparecer na tela e
sair da tela. Um conjunto de classes auxiliares de animador padrão é fornecido e pode
será alterado substituindo config_headsUpNotificationAnimationHelper
.
com.android.car.notification.headsup.Animationhelper.CarHeadsUpNotificationTopAnimationHelper.
anima a HUN para a transição da posição inicial para a posição final; para visível e, depois, para invisível.
Figura 3. Principais assistentes de animação
com.android.car.notification.headsup.animationhelper.CarHeadsUpNotificationBottomAnimationHelper
Anima a HUN para a transição da posição inicial para a posição final, para visível e, depois, para invisível.
Figura 4. Assistente de animação da parte de baixo
com.android.car.notification.headsup.animationhelper.CarHeadsUpNotificationRightAnimationHelper
Anima a HUN para a transição da posição inicial à esquerda para o posição final, para visível e, depois, para invisível.
Figura 5. Assistente de animação à direita
Assistente de animação personalizada
Se for necessária mais personalização, o assistente do animador
As classes podem ser substituídas ou uma classe auxiliar de animador personalizada pode ser usada
desde que a classe de ajuda implemente o HeadsUpNotificationAnimationHelper
interface, conforme mostrado neste snippet 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); } }