跳至主要内容

StatusBar

用于控制应用状态栏的组件。状态栏通常位于屏幕顶部,显示当前时间、Wi-Fi 和蜂窝网络信息、电池电量和/或其他状态图标。

与导航器一起使用

可以同时挂载多个 StatusBar 组件。这些属性将按照 StatusBar 组件挂载的顺序合并。

命令式 API

在某些情况下,使用组件并不理想,因此还提供了一个作为组件上的静态函数公开的命令式 API。但是,不建议同时使用静态 API 和组件来设置相同的属性,因为静态 API 设置的任何值都将在下一次渲染时被组件设置的值覆盖。


参考

常量

currentHeight
Android

状态栏的高度,包括如果有的话,缺口的高度。


属性

animated

如果状态栏属性更改之间的过渡应该进行动画处理。支持 backgroundColorbarStylehidden 属性。

类型必需默认值
布尔值false

backgroundColor
Android

状态栏的背景颜色。

警告

由于 Android 15 中引入了边缘到边缘的强制执行,在 API 级别 35 中不建议设置状态栏的背景颜色。

类型必需默认值
颜色默认系统状态栏背景颜色,如果未定义则为 'black'

barStyle

设置状态栏文本的颜色。

在 Android 上,这只会影响 API 版本 23 及更高版本。

类型必需默认值
StatusBarStyle'default'

hidden

是否隐藏状态栏。

类型必需默认值
布尔值false

networkActivityIndicatorVisible
iOS

是否应显示网络活动指示器。

类型默认值
布尔值false

showHideTransition
iOS

使用 hidden 属性显示和隐藏状态栏时的过渡效果。

类型默认值
StatusBarAnimation'fade'

translucent
Android

状态栏是否半透明。当 translucent 设置为 true 时,应用将在状态栏下方绘制。当使用半透明状态栏颜色时,这很有用。

类型默认值
布尔值false

方法

popStackEntry()

static popStackEntry(entry: StatusBarProps);

获取并从堆栈中删除最后一个 StatusBar 条目。

参数

名称类型描述
entry
必需
任何pushStackEntry 返回的条目。

pushStackEntry()

static pushStackEntry(props: StatusBarProps): StatusBarProps;

将 StatusBar 条目推送到堆栈中。完成后,应将返回值传递给 popStackEntry

参数

名称类型描述
props
必需
任何包含要在堆栈条目中使用的 StatusBar 属性的对象。

replaceStackEntry()

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

用新的属性替换现有的 StatusBar 堆栈条目。

参数

名称类型描述
entry
必需
任何pushStackEntry 返回的要替换的条目。
props
必需
任何包含要在替换的堆栈条目中使用的 StatusBar 属性的对象。

setBackgroundColor()
Android

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

设置状态栏的背景颜色。

警告

由于 Android 15 中引入了边缘到边缘的强制执行,在 API 级别 35 中不建议设置状态栏的背景颜色。

参数

名称类型描述
颜色
必需
字符串背景颜色。
animated布尔值为样式更改设置动画。

setBarStyle()

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

设置状态栏样式。

参数

名称类型描述
style
必需
StatusBarStyle要设置的状态栏样式。
animated布尔值为样式更改设置动画。

setHidden()

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

显示或隐藏状态栏。

参数

名称类型描述
hidden
必需
布尔值隐藏状态栏。
animation
iOS
StatusBarAnimation更改状态栏隐藏属性时的动画。

setNetworkActivityIndicatorVisible()
iOS

static setNetworkActivityIndicatorVisible(visible: boolean);

控制网络活动指示器的可见性。

参数

名称类型描述
visible
必需
布尔值显示指示器。

setTranslucent()
Android

static setTranslucent(translucent: boolean);

控制状态栏的半透明度。

参数

名称类型描述
translucent
必需
布尔值设置为半透明。

类型定义

StatusBarAnimation

iOS 上过渡的状态栏动画类型。

类型
枚举

常量

类型描述
'fade'字符串淡入淡出动画
'slide'字符串滑动动画
'none'字符串无动画

StatusBarStyle

状态栏样式类型。

类型
枚举

常量

类型描述
'default'字符串默认状态栏样式(iOS 为深色,Android 为浅色)
'light-content'字符串白色文本和图标
'dark-content'字符串深色文本和图标(Android 需要 API>=23)