Android状态栏背景设置(透明化、调色、背景融合)

您所在的位置:网站首页 字体如何设计跟背景协调一样 Android状态栏背景设置(透明化、调色、背景融合)

Android状态栏背景设置(透明化、调色、背景融合)

2024-06-19 09:11| 来源: 网络整理| 查看: 265

前言:

         开发的时候,我们可能遇到这样的问题,顶部状态栏和背景颜色不同,很难看。

                                                                             

但是我们想要的或许是这样的效果(背景融合或者色调统一),瞬间好看了是不是

 

方法来了

   第一种背景融合

  直接用代码实现(需要安卓5.0以上),首先在activity super.onCreate之后  setContentView之前(先对版本号进行判断)

if (Build.VERSION.SDK_INT >= 21){ View decorView = getWindow().getDecorView(); decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_STABLE); getWindow().setStatusBarColor(Color.TRANSPARENT); } /*注解:getWindow().getDecorView()拿到当前活动DecorView, 再setSystemUiVisibility()改变系统UI的显示 View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN和View.SYSTEM_UI_FLAG_LAYOUT_STABLE 就表示活动的布局会显示在状态栏上面,再将状态栏设置为透明色setStatusBarColor()*/

然后在根布局下加上

android:fitsSystemWindows="true"

二、更改状态栏颜色。

首先 先看看这张图,理解一下我们创建工程后,系统默认的给我们初始化的一些属性。

通过上图,我们可以通过设置不同的属性来达到控制不同位置颜色的目的,下面给出使用示例,修改res/colors里面的内容:

#56E336 #EDED19 #03DAC5

主要是设置 colorPrimary,colorPrimaryDark这两个属性的值来设置状态栏的颜色,需要注意的是:

1:AndroidManifest.xml文件中的targetSdkVersion必须设置在 21 以上。

2.parent主题必须是 Theme.AppCompat 开头,兼容包下的主题,所以必须一用 v7 包。  



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3