记录一下,今天想看一下沉浸式状态栏!
之前写的Android是这样的:

看出通知栏的颜色不太美观,但是不想隐藏状态栏,又想要显示时间等信息。
虽然用框架可以简单实现,但我还是想自己试一试
//这个特性是安卓5.0以后才支持的所以需要对系统版本号做判断
if (Build.VERSION.SDK_INT>Build.VERSION_CODES.LOLLIPOP){
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLS CREEN
|View.SYSTEM_UI_FLAG_LAYOUT_STABLE
);
getWindow().setStatusBarColor(Color.TRANSPARENT);//这行是重点
}
但是我用的ToolBar 左边的icon有明显的下移,如过通知栏没有其他按钮或者文本的话,用这个是没问题的。

然后我设置成了伪沉浸式状态栏,这个问题解决了。 只需要这一行代码!
window.setStatusBarColor(Color.parseColor("#00BCD4"));

问题虽然解决了,但我想这不是最好的方式,如果有更好的方式,分享共同学习!
补充说明:
一下方法解决了,头部标题栏会上移问题
来源:Android 最新实现沉浸式状态栏的效果_android沉浸式状态栏-优快云博客
//这个特性是安卓5.0以后才支持的所以需要对系统版本号做判断
if (Build.VERSION.SDK_INT>Build.VERSION_CODES.LOLLIPOP){
getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
|View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
getWindow().setStatusBarColor(Color.TRANSPARENT);
}