前言:自从google把android升级到5.x之后,各种各样的效果,应接不暇!当然了,今天我们着重讲解一下MD设计风格的关于状态栏颜色的相关东西,国内用户把这个称作为沉浸式开发,对于这一概念的认识,如有兴趣请移步《为什么在国内会有很多用户把「透明栏」(Translucent Bars)称作 「沉浸式顶栏」? - 知乎 》,现在市场上的app几乎都支持状态栏改变颜色,Android5.x以上是默认支持这一效果的,ok开始今天的讲解!
--------------------------------------------------分割线------------------------------------------------
hongyang的讲解也不错大家可以参考一下:《Android 沉浸式状态栏攻略 让你的状态栏变色吧》
--------------------------------------------------分割线------------------------------------------------
这里有一张hongyang的图片,方便大家理解状态栏相关的东西:
--------------------------------------------------分割线------------------------------------------------
1、在主题样式中设置:
<resources>
<!-- Base application theme. -->
<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>
</style>
</resources>
颜色:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="colorPrimary">#3F51B5</color>
<color name="colorPrimaryDark">#303F9F</color>
<color name="colorAccent">#FF4081</color>
</resources>
2、通过代码设置:
getWindow().setStatusBarColor(getResources().getColor(R.color.colorPrimaryDark));
效果图自行实现!
--------------------------------------------------分割线------------------------------------------------底部虚拟导航沉浸效果:
1、属性解决:navigationBarColor
2、代码:getWindow().setNavigationBarColor()
效果图自行实现!
--------------------------------------------------下节课讲解如何在4.4上实现这样的效果------------------------------------------------