使用cordova实现就需要cordova-plugin-statusbar这个插件,我们需要对此插件进行一些修改即可实现我们想要的效果。
在项目路径->platforms->android->src->org->apache->cordova->statusbar中找到StatusBar.java文件。
然后修改run方法即可:
public void run() {
// Clear flag FLAG_FORCE_NOT_FULLSCREEN which is set initially
// by the Cordova.
Window window = cordova.getActivity().getWindow();
// 添加内容start
window.addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); // 控制顶部状态栏
// window.addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION); 控制底部导航栏
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
window.setStatusBarColor(Color.TRANSPARENT);
window.setNavigationBarColor(Color.TRANSPARENT);
// 修改状态栏字体颜色为黑色,无需设置则注释
window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR);
//添加内容end
window.clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
// Read 'StatusBarBackgroundColor' from config.xml, default is #000000.
//注释默认的设置背景色的方法 //setStatusBarBackgroundColor(preferences.getString("StatusBarBackgroundColor", "#000000"));
}
状态栏高度:android(25px),ios(20px)