实现背景图和状态栏融合
- 简单的方法
if(Build.VERSION.SDK_INT >= 21) {
View decroView = getWindow().getDecorView();
decroView.setSystemUiVisibility(
View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
|View.SYSTEM_UI_FLAG_LAYOUT_STABLE);//布局显示在状态栏上面
getWindow().setStatusBarColor(Color.TRANSPARENT);//设置颜色为透明色
}
- View decroView = getWindow().getDecorView();
拿到当前活动的DecroView,再调用setSystemUiVisibility()方法来改变系统的UI显示。
当在MainActivity添加这段逻辑是,可能你的布局会整体向上移动,可能不太美观,所以可以在布局中使用:
android:fitsSystemWindows="true"
系统会为状态栏留出空间