Cordova 实现沉浸式(透明)状态栏效果调整字体颜色

1.实现透明状态栏效果
//实现沉浸式状态栏效果 新增代码start
window.addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); 
window.addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
         window.setStatusBarColor(Color.TRANSPARENT);
         window.setNavigationBarColor(Color.TRANSPARENT);
 } else if ((Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT)) {
window.addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); 
}
// 新增代码end
window.clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
                //注释掉原来设置背景色的地方
                //setStatusBarBackgroundColor(preferences.getString("StatusBarBackgroundColor", "#000000"));
1.调整状态栏字体颜色

设置成黑色

setStatusBarStyle(preferences.getString("StatusBarStyle","blacktranslucent"));

设置成白色
注释掉setStatusBarStyle代码块,我测试在某些机型上就算设置lightcontent一样会显示黑色,直接注释掉就好了。

你可能感兴趣的:(Cordova 实现沉浸式(透明)状态栏效果调整字体颜色)