关于沉浸栏的实现:
在4.4 及 以上才可以实现
理解------- 所谓的沉浸栏
其实就是设置为 窗体状态栏透明 (在values 的 styles 文件中设置)
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> <!-- Customize your theme here. --> <item name="colorPrimary">@color/colorPrimary</item> <item name="colorPrimaryDark">@color/colorPrimaryDark</item> <item name="colorAccent">@color/colorAccent</item> <item name="android:windowTranslucentStatus" tools:targetApi="kitkat">true</item> <!--<item name="android:windowBackground"></item>--> </style>
此时应用进入后 状态栏就变成了 透明的
在toolbar中加入 属性 拉伸到系统窗体 剪裁内边距(本人感觉这个没什么作用) 上面的内边距(一般设置为25dp,这个值接近于系统状态栏的高度)
<android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:paddingTop="25dp" android:clipToPadding="true" android:fitsSystemWindows="true" android:layout_width="match_parent" android:background="@color/toolbar_bg" android:layout_height="wrap_content">
此时就可以实现 状态栏的显示的颜色 和 toolbar的颜色一致
原因很简单 因为拉伸了toolbar 状态栏的颜色为透明 所以我们看到的颜色就是toolbar的背景色
此外还可以通过代码 实现状态栏透明:
在Activity 中
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);