因为之前设计要求改变状态栏的颜色,所以自己就弄了下,网上的好多都是改变一次,因为我的是第一页是白底黑字,别的页是蓝底的,所以我就专门 研究了下
首先先看未改变的颜色

改变之后的颜色

因为这是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);
}
}
本文介绍如何在Android API23及以上版本中实现状态栏颜色的动态改变,包括白底黑字和蓝底的切换,并展示了具体的实现代码。


被折叠的 条评论
为什么被折叠?



