跳到主要内容
版本:v2

状态栏

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

iOS 注意事项

本插件要求 Info.plist 文件中将 "基于视图控制器的状态栏外观" (UIViewControllerBasedStatusBarAppearance) 设为 YES。如需帮助请参阅 iOS 配置

状态栏默认可见且样式默认为 StatusBarStyle.Light。您可以通过在 Info.plist 中添加 UIStatusBarHidden 和/或 UIStatusBarStyle 来修改默认设置。

目前 iOS 设备不支持 setBackgroundColorsetOverlaysWebView 方法。

事件

  • statusTap (状态栏点击事件)

示例

// 事件监听 (仅iOS)
window.addEventListener('statusTap', function () {
console.log('状态栏被点击');
});

// API 调用
import { Plugins, StatusBarStyle } from '@capacitor/core';

const { StatusBar } = Plugins;

export class StatusBarExample {
isStatusBarLight = true;

changeStatusBar() {
StatusBar.setStyle({
style: this.isStatusBarLight ? StatusBarStyle.Dark : StatusBarStyle.Light,
});
this.isStatusBarLight = !this.isStatusBarLight;

// 让内容显示在透明状态栏下方 (仅Android)
StatusBar.setOverlaysWebView({
overlay: true,
});
}

hideStatusBar() {
StatusBar.hide();
}

showStatusBar() {
StatusBar.show();
}
}

API

setStyle(...)

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

设置状态栏当前样式

参数类型
options
StatusBarStyleOptions

setBackgroundColor(...)

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

设置状态栏背景颜色

参数类型
options
StatusBarBackgroundColorOptions

show(...)

show(options?: StatusBarAnimationOptions) => Promise<void>

显示状态栏

参数类型
options
StatusBarAnimationOptions

hide(...)

hide(options?: StatusBarAnimationOptions) => Promise<void>

隐藏状态栏

参数类型
options
StatusBarAnimationOptions

getInfo()

getInfo() => Promise<StatusBarInfoResult>

获取状态栏当前状态信息

返回值:

Promise<StatusBarInfoResult>


setOverlaysWebView(...)

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

设置状态栏是否覆盖 WebView,以便利用设备"刘海"周围的空间

参数类型
options
StatusBarOverlaysWebviewOptions

Interfaces

StatusBarStyleOptions

属性类型
style
StatusBarStyle

StatusBarBackgroundColorOptions

属性类型
colorstring

StatusBarAnimationOptions

属性类型描述
animation
StatusBarAnimation
仅iOS。显示或隐藏状态栏时使用的动画类型。

StatusBarInfoResult

属性类型
visibleboolean
style
StatusBarStyle
colorstring
overlaysboolean

StatusBarOverlaysWebviewOptions

属性类型
overlayboolean

Enums

StatusBarStyle

枚举值描述
Dark"DARK"深色背景使用浅色文字。
Light"LIGHT"浅色背景使用深色文字。

StatusBarAnimation

枚举值描述
None"NONE"显示/隐藏时不使用动画。
Slide"SLIDE"显示/隐藏时使用滑动动画。
Fade"FADE"显示/隐藏时使用淡入淡出动画。