跳到主要內容

StatusBar

用於控制應用程式狀態列的組件。狀態列通常位於螢幕頂端,顯示目前時間、Wi-Fi 和行動網路資訊、電池電量和/或其他狀態圖示的區域。

與 Navigator 搭配使用

可以同時掛載多個 StatusBar 組件。屬性將按照 StatusBar 組件掛載的順序合併。

命令式 API

對於不適合使用組件的情況,也有一個命令式 API 作為組件上的靜態函式公開。但不建議對同一個屬性同時使用靜態 API 和組件,因為靜態 API 設定的任何值都會在下次渲染時被組件設定的值覆蓋。


參考

常數

currentHeight
Android

狀態列的高度,包含瀏海高度(如果有的話)。


屬性

animated

狀態列屬性變更之間的過渡是否應具有動畫效果。支援 backgroundColorbarStylehidden 屬性。

類型必填預設值
booleanfalse

backgroundColor
Android

狀態列的背景顏色。

警告

由於 Android 15 中引入的邊緣到邊緣強制執行,在 API level 35 中設定狀態列的背景顏色已被棄用。

類型必填預設值
color預設系統 StatusBar 背景顏色,如果未定義則為 'black'

barStyle

設定狀態列文字的顏色。

在 Android 上,這只會影響 API 版本 23 及以上版本。

類型必填預設值
StatusBarStyle'default'

hidden

狀態列是否隱藏。

類型必填預設值
booleanfalse

networkActivityIndicatorVisible
iOS

網路活動指示器是否應可見。

類型預設值
booleanfalse

showHideTransition
iOS

使用 hidden 屬性顯示和隱藏狀態列時的過渡效果。

類型預設值
StatusBarAnimation'fade'

translucent
Android

狀態列是否為半透明。當 translucent 設定為 true 時,應用程式將在狀態列下方繪製。當使用半透明狀態列顏色時,這非常有用。

類型預設值
booleanfalse

方法

popStackEntry()

tsx
static popStackEntry(entry: StatusBarProps);

從堆疊中取得並移除最後一個 StatusBar 條目。

參數

名稱類型描述
entry
必填
anypushStackEntry 返回的條目。

pushStackEntry()

tsx
static pushStackEntry(props: StatusBarProps): StatusBarProps;

將 StatusBar 條目推入堆疊。完成時,應將傳回值傳遞給 popStackEntry

參數

名稱類型描述
props
必填
any包含要在堆疊條目中使用的 StatusBar 屬性的物件。

replaceStackEntry()

tsx
static replaceStackEntry(
entry: StatusBarProps,
props: StatusBarProps
): StatusBarProps;

使用新屬性替換現有的 StatusBar 堆疊條目。

參數

名稱類型描述
entry
必填
anypushStackEntry 返回以替換的條目。
props
必填
any包含要在替換堆疊條目中使用的 StatusBar 屬性的物件。

setBackgroundColor()
Android

tsx
static setBackgroundColor(color: ColorValue, animated?: boolean);

設定狀態列的背景顏色。

警告

由於 Android 15 中引入的邊緣到邊緣強制執行,在 API level 35 中設定狀態列的背景顏色已被棄用。

參數

名稱類型描述
color
必填
string背景顏色。
animatedboolean動畫顯示樣式變更。

setBarStyle()

tsx
static setBarStyle(style: StatusBarStyle, animated?: boolean);

設定狀態列樣式。

參數

名稱類型描述
style
必填
StatusBarStyle要設定的狀態列樣式。
animatedboolean動畫顯示樣式變更。

setHidden()

tsx
static setHidden(hidden: boolean, animation?: StatusBarAnimation);

顯示或隱藏狀態列。

參數

名稱類型描述
hidden
必填
boolean隱藏狀態列。
animation
iOS
StatusBarAnimation變更狀態列隱藏屬性時的動畫。

setNetworkActivityIndicatorVisible()
iOS

tsx
static setNetworkActivityIndicatorVisible(visible: boolean);

控制網路活動指示器的可見性。

參數

名稱類型描述
visible
必填
boolean顯示指示器。

setTranslucent()
Android

tsx
static setTranslucent(translucent: boolean);

控制狀態列的半透明度。

參數

名稱類型描述
translucent
必填
boolean設定為半透明。

類型定義

StatusBarAnimation

iOS 上過渡的狀態列動畫類型。

類型
enum

常數

類型描述
'fade'string淡入淡出動畫
'slide'string滑動動畫
'none'string無動畫

StatusBarStyle

狀態列樣式類型。

類型
enum

常數

類型描述
'default'string預設狀態列樣式(iOS 為深色,Android 為淺色)
'light-content'string白色文字和圖示
'dark-content'string深色文字和圖示 (Android 上需要 API>=23)