因为之前设计要求改变状态栏的颜色,所以自己就弄了下,网上的好多都是改变一次,因为我的是第一页是白底黑字,别的页是蓝底的,所以我就专门 研究了下
首先先看未改变的颜色
改变之后的颜色
因为这是API23之后才能改变的,所以你的判断版本
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
//获取窗口区域
Window window = getActivity().getWindow();
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
if(colorID==R.color.color_ffffff){
//设置状态栏颜色
window.setStatusBarColor(UIUtils.getColor(colorID));
//设置显示为白色背景,黑色字体
window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR);
}else {
window.setStatusBarColor(UIUtils.getColor(colorID));
window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_VISIBLE);
}
}