设置toolbar和系统状态栏颜色一致

来源:互联网 发布:cf网络异常23 2 编辑:程序博客网 时间:2024/06/05 18:19

  创建了一个默认的空的Activity之后,显示的界面是这样的
默认的Activity样式
自上而下分别是状态栏、actionbar和内容区域。
随着AndroidSDK的更新,actionbar被大家抛弃,更多的人开始选择toolbar,默认情况下的toolbar的颜色和状态栏的颜色是不一致的,如下图所示
toolbar和状态栏的颜色不一致

两步即可解决
1. 在代码中添加如下代码:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { WindowManager.LayoutParams localLayoutParams = getWindow().getAttributes(); localLayoutParams.flags = (WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS | localLayoutParams.flags);}

上面代码表示设置状态栏为透明,在代码中设置更为推荐,因为xml设置可能在某些手机中无法生效。
2. 紧接着在toolbar中加入如下代码

android:fitsSystemWindows="true"