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一样会显示黑色,直接注释掉就好了。