在Cordova中的设备就绪事件之前更改状态栏颜色

时间:2019-04-28 07:03:33

标签: cordova

我正在使用cordova-statusbar插件,并且可以使用StatusBar.backgroundColorByHexString函数成功更改状态栏的背景颜色。

deviceready事件之前,StatusBar API显然不可用,因此当该应用在我的Android设备中启动时,实际上需要一秒钟的时间将默认的黑色通知栏更改为我在代码中提供的十六进制颜色。 1秒不是很多,所以我忽略了它。

最近,我已经使用cordova-splashscreen插件在自己的应用中实现了启动画面;就像Cordova v9文档所说的那样,在显示初始屏幕时,不会运行任何JavaScript。我已将我的启动画面设置为在config.xml中2秒后消失。

因此,通知栏将保持黑色,直到2秒钟,然后启动屏幕才会消失,并且该栏变为我指定的颜色。我真的希望它具有我从应用程序启动时指定的颜色(例如启动屏幕),而不是在deviceready事件之后指定的颜色。

有可能吗?我希望有一些config.xml偏好设置,例如:-

<preference name="StatusBarColor" value="#FFFFFF" />

请注意,存在这样的偏好(某种程度上),但仅适用于iOS。我需要用于Android。

2 个答案:

答案 0 :(得分:0)

尝试

<preference name="StatusBarBackgroundColor" value="#FFFFFF" />

阅读文档here

答案 1 :(得分:0)

我通过在Cordova plugins文件夹中编辑StatusBar.java文件,然后将#000000启动背景色替换为所需的背景色-#FFFFFF来解决了这个问题。