android沉浸状态栏和顶部状态栏背景色的设置

Posted 切切歆语

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android沉浸状态栏和顶部状态栏背景色的设置相关的知识,希望对你有一定的参考价值。

法一:

现在很多应用都引用了沉浸式状态栏,如QQ,效果下图:

技术分享

 

这样的效果很酷炫,其实设置很简单。

不过要说明的是,这种效果只能在API19以及以上版本中才能够做到。

       如果想让界面Activity中实现这种效果,代码如下: 

  if(VERSION.SDK_INT>= VERSION_CODES.KITKAT) {
            //透明状态栏
            getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
            //透明导航栏
            getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
        }

VERSION_CODES.KITKAT就是API19的名称,只有手机系统版本大于19,才执行判断中的代码,才能显示沉浸状态栏的效果。 
同时,这几句代码要写在setContentView(R.layout.XX);方法之前执行。

 

 先贴下效果图,以便和实现过程中做下对比

技术分享

 要去掉标题栏,在setContentView(R.layout.XX);之前加如代码:requestWindowFeature(Window.FEATURE_NO_TITLE);

 要去掉标题栏,在setContentView(R.layout.XX);之前加如代码:requestWindowFeature(Window.FEATURE_NO_TITLE);

 效果图

技术分享

API改为19以上,根标签添加背景颜色,然后

技术分享

 

法二:

 

在res目录下面新建一个values-v19文件夹,下面新建一个styles.xml文件,内容如下

技术分享

当然这样还得在布局文件的根标签中添加

   android:clipToPadding="true" 
    android:fitsSystemWindows="true"

如果不添加这段代码的话,布局就会靠着顶部很近,就不好看了,

技术分享

在AndroidManifest.xml 下的application 标签引用values-v19文件夹的styles.xml

技术分享

运行效果是一样的。

源码下载:

Eclipse下载地址:http://download.csdn.net/detail/dickyqie/9586254

android studio下载地址:https://github.com/DickyQie/StatusBarDemo








以上是关于android沉浸状态栏和顶部状态栏背景色的设置的主要内容,如果未能解决你的问题,请参考以下文章

android 状态栏和虚拟按键栏字体背景颜色设置

android 状态栏和虚拟按键栏字体背景颜色设置

Android 沉浸式/透明式状态栏、导航栏

沉浸式状态栏的三种实现方式

透明状态栏和沉浸式状态栏

Android沉浸式状态栏 + scrollView顶部伸缩 + actionBar渐变