跳至主要内容
版本:v8

@capacitor/status-bar

StatusBar API 提供了配置状态栏样式的方法,以及显示或隐藏状态栏的方法。

安装

npm install @capacitor/status-bar
npx cap sync

iOS 注意

此插件要求在 Info.plist 中将“基于视图控制器的状态栏外观”(UIViewControllerBasedStatusBarAppearance) 设置为 YES。有关帮助,请阅读有关 配置 iOS 的内容。

状态栏可见性默认设置为可见,样式默认设置为 Style.Default。您可以通过在 Info.plist 中添加 UIStatusBarHidden 和/或 UIStatusBarStyle 来更改这些默认值。

setBackgroundColorsetOverlaysWebView 目前在 iOS 设备上不支持。

示例

import { StatusBar, Style } from '@capacitor/status-bar';

// iOS only
window.addEventListener('statusTap', function () {
console.log('statusbar tapped');
});

// Display content under transparent status bar (Android only)
StatusBar.setOverlaysWebView({ overlay: true });

const setStatusBarStyleDark = async () => {
await StatusBar.setStyle({ style: Style.Dark });
};

const setStatusBarStyleLight = async () => {
await StatusBar.setStyle({ style: Style.Light });
};

const hideStatusBar = async () => {
await StatusBar.hide();
};

const showStatusBar = async () => {
await StatusBar.show();
};

API

setStyle(...)

setStyle(options: StyleOptions) => Promise<void>

设置状态栏的当前样式。

参数类型
optionsStyleOptions

1.0.0


setBackgroundColor(...)

setBackgroundColor(options: BackgroundColorOptions) => Promise<void>

设置状态栏的背景颜色。

此方法仅在 Android 上受支持。

参数类型
optionsBackgroundColorOptions

1.0.0


show(...)

show(options?: AnimationOptions | undefined) => Promise<void>

显示状态栏。在 iOS 上,如果状态栏最初处于隐藏状态,并且初始样式设置为 UIStatusBarStyleLightContent,则第一次调用 show 可能会在动画中出现故障,显示文本为深色,然后过渡到浅色。建议在第一次调用时使用 Animation.None 作为动画。

参数类型
optionsAnimationOptions

1.0.0


hide(...)

hide(options?: AnimationOptions | undefined) => Promise<void>

隐藏状态栏。

参数类型
optionsAnimationOptions

1.0.0


getInfo()

getInfo() => Promise<StatusBarInfo>

获取有关状态栏当前状态的信息。

**返回:** Promise<StatusBarInfo>

1.0.0


setOverlaysWebView(...)

setOverlaysWebView(options: SetOverlaysWebViewOptions) => Promise<void>

设置状态栏是否应覆盖 webview 以允许使用其下方的空间。

此方法仅在 Android 上受支持。

参数类型
optionsSetOverlaysWebViewOptions

1.0.0


接口

StyleOptions

属性类型描述
styleStyleStyle 状态栏文本的样式。1.0.0

BackgroundColorOptions

属性类型描述
colorstring设置状态栏颜色使用的十六进制颜色。此选项仅在 Android 上受支持。1.0.0

AnimationOptions

属性类型描述默认
animationAnimation显示或隐藏时使用的状态栏动画类型。此选项仅在 iOS 上受支持。Animation.Fade1.0.0

StatusBarInfo

属性类型描述
visibleboolean状态栏是否可见。1.0.0
styleStyle当前状态栏样式。1.0.0
colorstring当前状态栏颜色。此选项仅在 Android 上受支持。1.0.0
overlaysboolean状态栏是否被覆盖。此选项仅在 Android 上受支持。1.0.0

SetOverlaysWebViewOptions

属性类型描述
overlayboolean是否覆盖状态栏。1.0.0

枚举

Style

成员描述
Dark'DARK'深色背景上的浅色文本。1.0.0
Light'LIGHT'浅色背景上的深色文本。1.0.0
默认'DEFAULT'样式基于设备外观。如果设备使用深色模式,则状态栏文本将为浅色。如果设备使用浅色模式,则状态栏文本将为深色。在 Android 上,默认值将是应用程序启动时使用的值。1.0.0

Animation

成员描述
None'NONE'显示/隐藏期间没有动画。1.0.0
Slide'SLIDE'显示/隐藏期间的滑动动画。它在 iOS 15+ 上不起作用。1.0.0
Fade'FADE'显示/隐藏期间的淡入淡出动画。1.0.0