通知是 Android 在應用程式外顯示的訊息,可為使用者提供更新、提醒和其他即時資訊。在 Android Automotive OS 中,通知可以顯示為抬頭通知 (HUN),也可以顯示在通知面板中 (或同時顯示在兩者中)。本頁說明如何自訂 HUN。
圖 1. 通知
您可以覆寫下方詳細說明的設定值,以兩種方式自訂 HUN:
- 位置
- 動畫
自訂 HUN 時,請務必判斷系統資訊列的 Z 順序對其造成的影響。如果系統列的 Z 順序為 10 以上,則會顯示在 HUN 上方。舉例來說,如果 HUN 顯示在螢幕頂端,而頂端系統列的 Z 順序為 10,頂端系統列就會顯示在 HUN 上方,除非 HUN 動畫輔助程式經過自訂,以便根據頂端系統列的高度偏移 HUN 的最終位置。
相關說明文件
-
如要瞭解疊加資源的方式和原因,請參閱「自訂系統 UI」中的「疊加層」。
-
如要進一步瞭解通知,請前往 developer.android.com 參閱「Android Automotive OS 上的通知」。
config_showHeadsUpNotificationOnBottom
根據設定值 config_showHeadsUpNotificationOnBottom
,HUN 可顯示在畫面頂端或底部。預設值為 false
,這個值會將通知的最終位置設為螢幕頂端。
圖 2. 預設 HUN
config_headsUpNotificationAnimationHelper
通知在螢幕上顯示和離開螢幕的方式有多種。系統會提供一組預設的動畫輔助類別,您可以透過覆寫 config_headsUpNotificationAnimationHelper
切換這些類別。
com.android.car.notification.headsup.animationhelper.CarHeadsUpNotificationTopAnimationHelper
為 HUN 製作動畫,讓其從初始位置轉換至最終位置,然後顯示,再隱藏。
圖 3. 頂級動畫輔助工具
com.android.car.notification.headsup.animationhelper.CarHeadsUpNotificationBottomAnimationHelper
為 HUN 製作動畫,讓其從初始位置轉換至最終位置,然後顯示,再隱藏。
圖 4. 底部動畫輔助工具
com.android.car.notification.headsup.animationhelper.CarHeadsUpNotificationRightAnimationHelper
為 HUN 製作動畫,讓其從左側的初始位置轉移至最終位置,然後顯示,再隱藏。
![]() |
![]() |
圖 5. 右側動畫輔助工具
自訂動畫輔助程式
如果需要額外自訂,您可以覆寫動畫輔助程式類別,或是使用自訂的動畫輔助程式類別,前提是輔助類別實作 HeadsUpNotificationAnimationHelper
介面,如本程式碼片段所示:
[...] 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); } }