cordova 设置状态栏颜色以及启动页全屏

cordova 设置状态栏颜色以及启动页全屏

  • 设置状态栏颜色
  • 设置启动页全屏

设置状态栏颜色

使用 cordova-plugin-statusbar 插件进行实现。请仔细阅读官方文档,描述比较详细。

设置状态栏颜色主要是针对 Android 平台进行设置,修改配置文件 config.xml

 <preference name="StatusBarOverlaysWebView" value="true" /> <!-- 启动时使状态栏覆盖或不覆盖WebView 默认值为true --> 
 <preference name="StatusBarStyle" value="lightcontent" />  <!-- 状态栏样式,默认为lightcontent --> 

聪明的人已经发现,其实不用加,如果有此属性,删除或者改为默认值即可。

在项目启动的地方加入代码,如果是 iocic 项目就在 app.js 文件中 .run$ionicPlatform.ready(function () 中加入如下代码

if (window.cordova && window.cordova.plugins && window.cordova.plugins.Keyboard) {
     
    window.StatusBar.overlaysWebView(true); // 是否覆盖webview,如果覆盖需要做相应的样式处理
    window.StatusBar.backgroundColorByHexString('#3ba4f5');
}

如果是其他的项目,在启动代码加入如下代码时记得加 deviceready 监听

document.addEventListener('deviceready', function () {
     
    if (window.cordova && window.cordova.plugins && window.cordova.plugins.Keyboard) {
     
        window.StatusBar.overlaysWebView(true); // 是否覆盖webview,如果覆盖需要做相应的样式处理
    	window.StatusBar.backgroundColorByHexString('#3ba4f5');
     }
}, false);

设置启动页全屏

设置启动页全屏方法很简单,iOS 不需要处理,Android 端只需要注释两行代码。打开 cordova-plugin-splashscreen/src/androidSplashScreen.java 文件注释如下代码:

// check to see if the splash screen should be full screen
// if ((cordova.getActivity().getWindow().getAttributes().flags & WindowManager.LayoutParams.FLAG_FULLSCREEN)
//                        == WindowManager.LayoutParams.FLAG_FULLSCREEN) {
     
                    splashDialog.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                            WindowManager.LayoutParams.FLAG_FULLSCREEN);
// }

注释 if 判断语句。在文件的318行。

你可能感兴趣的:(Cordova,Ionic,javascript)