android设置状态栏颜色中如何设置手机屏幕的背景颜色

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

  效果很酷炫其实设置也很简单。但是需要注意的是,这种效果只能在API19以及以上版本中才能够做到

  注意:VERSION_CODES.KITKAT 就是API19的名称,只有手机系统 SDK 版本大于19才执行判断中的代码,才能显示沉浸状态栏的效果

  其次,API 改为 19 以上Layout 根标签添加背景颜色。

  此种方式设置第二层标签为内容所在,内容会从屏幕最顶端开始展现这样若最顶端有内容状态栏会造成遮挡,若要从状態栏下开始展现内容需在布局文件的根标签中添加

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

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

  如果不添加这段代码的话,布局就会靠着屏幕顶部造成遮挡。

android设置状态栏颜色开发,对于状态栏嘚修改,实在是不友好,没什么api可以用,不像ios那么方便.但是ui又喜欢只搞ios一套.没办法.各种翻源码,写反射.真的蛋疼.

当toolbar及状态栏需要为白色或浅色时(如簡书),状态栏由于用的Light风格Theme,字体,图标也都是白色,会看不清.如果改变成黑色就很和谐了.

改变状态栏颜色,可以看看这篇文章.传送门:

这种方法实现嘚状态栏变色,没有黑色背景.

使用全屏模式实现的效果如下(QQ的效果):


我用的手机是华为,系统7.0

 * 设置状态栏黑色字体图标
 * 已知系统类型时,设置狀态栏黑色字体图标
 
 * 清除MIUI或flyme或6.0以上版本状态栏黑色字体
 * 设置状态栏图标为深色和魅族特定的文字风格
 * 可以用来判断是否为Flyme用户
 * @param dark 是否把状態栏字体及图标颜色设置为深色
 * 设置状态栏字体图标为深色,需要MIUIV6以上
 * @param dark 是否把状态栏字体及图标颜色设置为深色
 



此时步骤一设置背景的方法就会失效.


  

原因:当传入的resid相同时,就不会再次去设置背景色.



  



  

  
 //子类通过复写该方法,控制是否改变statusbar
//子类通过复写该方法,控制是否需要改变statusbar字体颜銫

6.0以下,5.0原生系统无法修改字体颜色,用了个比较取巧的办法,设置成半透明灰色.


  

以上就是本文的全部内容希望对大家的学习有所帮助,也希朢大家多多支持脚本之家

android设置状态栏颜色状态栏颜色主题設置直接使用设置主题状态栏主题,或者修改状态栏颜色

我要回帖

更多关于 android设置状态栏颜色 的文章

 

随机推荐