Powiadomienie to wiadomość wyświetlana przez Androida poza aplikacją w celu zapewnienia użytkownikom aktualizacji, przypomnień i innych aktualnych informacji. W systemie operacyjnym Android Automotive powiadomienie może być wyświetlane jako powiadomienie przez komunikator (HUN) lub w panelu powiadomień (lub w obu przypadkach). Na tej stronie wyjaśniono, jak dostosować HUN.
Rysunek 1. Powiadomienie
Zastępując wartości konfiguracyjne opisane poniżej, możesz dostosować HUN na dwa sposoby:
- Pozycja
- Animacja
Dostosowując HUN, pamiętaj o określeniu wpływu kolejności Z pasków systemowych. Jeśli kolejność Z paska systemowego wynosi 10 lub więcej, pojawia się ona na górze HUN. Na przykład, jeśli HUN jest wyświetlany na górze ekranu, a górny pasek systemowy ma kolejność Z równą 10, górny pasek systemowy jest wyświetlany na górze HUN , chyba że pomocnik animacji HUN jest dostosowany tak, aby przesunąć końcową pozycję HUN o wysokość górnego paska systemowego.
Powiązana dokumentacja
Aby dowiedzieć się, jak i dlaczego nakładać zasoby, zobacz Nakładki w artykule Dostosowywanie interfejsu użytkownika systemu.
Aby dowiedzieć się więcej o powiadomieniach, zobacz Powiadomienia w systemie operacyjnym Android Automotive na stronie developer.android.com.
config_showHeadsUpNotificationOnBottom
HUN może być wyświetlany na górze lub na dole ekranu w oparciu o wartość konfiguracyjną config_showHeadsUpNotificationOnBottom
. Domyślnie ustawiona na false
, ta wartość ustawia ostateczną pozycję powiadomienia na górze ekranu.
Rysunek 2. Domyślny HUN
Pomocnik config_headsUpNotificationAnimation
Istnieje wiele sposobów wyświetlania powiadomienia na ekranie i opuszczania ekranu. Dostępny jest zestaw domyślnych klas pomocniczych animatora, które można zmienić, zastępując config_headsUpNotificationAnimationHelper
.
com.android.car.notification.headsup.animationhelper.CarHeadsUpNotificationTopAnimationHelper
Animuje HUN, aby przejść od pozycji początkowej do pozycji końcowej, do pozycji widocznej, a następnie do niewidocznej.
Rysunek 3. Najlepszy pomocnik animacji
com.android.car.notification.headsup.animationhelper.CarHeadsUpNotificationBottomAnimationHelper
Animuje HUN, aby przejść z pozycji początkowej do pozycji końcowej, do pozycji widocznej, a następnie do niewidocznej.
Rysunek 4. Dolny pomocnik animacji
com.android.car.notification.headsup.animationhelper.CarHeadsUpNotificationRightAnimationHelper
Animuje HUN, aby przejść od lewej pozycji początkowej do pozycji końcowej, do pozycji widocznej, a następnie do niewidocznej.
Rysunek 5. Prawy pomocnik animacji
Niestandardowy pomocnik animacji
Jeśli wymagane jest dodatkowe dostosowanie, można zastąpić klasy pomocnicze animatora lub zastosować niestandardową klasę pomocniczą animatora, pod warunkiem, że klasa pomocy implementuje interfejs HeadsUpNotificationAnimationHelper
, jak pokazano w tym fragmencie kodu:
[...] 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); } }