欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Android 将状态栏和导航栏透明

程序员文章站 2024-01-15 19:47:40
...

在使用qq的时候会发现,他的每个界面的图片是全屏的,包括在状态栏和导航栏也会显示。

所以我们可以将状态栏和导航栏透明化,就会达到真正的全屏显示

 

首先我们需要在build里面添加依赖:

'com.readystatesoftware.systembartint:systembartint:1.0.3'

然后创建一个SystemBarTintManager对象systemBarTintManager:

private SystemBarTintManager systemBarTintManager;

然后写一个方法:

private void initWindow(){//初始化窗口属性,让状态栏和导航栏透明
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT){
        getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
        getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
        systemBarTintManager = new SystemBarTintManager(this);
        int statusColor = Color.parseColor("#1976d2");
        systemBarTintManager.setNavigationBarTintColor(statusColor);
        systemBarTintManager.setStatusBarTintEnabled(true);
    }
}

直接调用这个方法就能达到效果了,可以去试一下