无法使用 cordova-plugin-statusbar 设置状态栏的颜色

Can't set color of statusbar with cordova-plugin-statusbar

我正在尝试更改离子应用程序中本机状态栏的颜色,但我无法让它工作。我已经安装了 cordova-plugin-statusbar,并且安装正常。以下代码完美运行:

if (StatusBar) {
    StatusBar.hide();
}

但尝试使用任何其他可用功能,例如:

if (StatusBar) {
    StatusBar.backgroundColorByHex('#RRGGBB');
}

不行,只有应用程序使用标准状态栏。

我还向 config.xml 添加了 <preference name="StatusBarOverlaysWebView" value="true" />,并在运行时以编程方式设置它。

Cordova 是 5.1.1 版,Ionic 是 1.5.5 版,我使用 Android 21 进行测试。有没有人遇到同样的问题或知道如何解决?

你能试试删除状态栏插件然后像这样重新安装吗:

ionic plugin rm org.apache.cordova.statusbar
ionic plugin add https://github.com/apache/cordova-plugin-statusbar.git

ionic issue tracker

也有同样的报道

上查看原始解决方案

添加插件。 运行 shell 命令:

$ cordova plugin add cordova-plugin-statusbar

编辑您的config.xml:

<preference name="StatusBarOverlaysWebView" value="true" />
<preference name="StatusBarBackgroundColor" value="#BE1912" />

“#BE1912”是默认颜色(在应用程序启动时)。

从您的 java 脚本代码更改 运行 时间:

if (window.cordova && StatusBar)
{
    StatusBar.backgroundColorByHexString('#BE1912');
}

Gil 的解决方案对我不起作用(我有三星 Galaxy S7 Edge)。

onDeviceReady: function () {
    app.receivedEvent('deviceready');
    console.log(StatusBar);
    if (window.cordova && StatusBar) {
        StatusBar.backgroundColorByHexString('#BE1912');
    }
},