1、 传统android手机的顶部有个黑条,有些手机的功能键是虚拟的,下面也有个黑条
沉浸式就是这些条都和软件主题颜色一样
2、 试过自己加代码,但是如果顶部的子控件存在padding的属性,效果非常不好,
所以参照了github上的源码,地址:https://github.com/hexiaochun/SystemBarTint
3、把SystemBarTintManager.java复制到自己的项目里,在onCreate方法中加上如下代码
// 创建状态栏的管理实例
SystemBarTintManager tintManager = new SystemBarTintManager(this);
// 激活状态栏设置
tintManager.setStatusBarTintEnabled(true);
// 激活导航栏设置
tintManager.setNavigationBarTintEnabled(true);
// 设置一个颜色给系统栏
tintManager.setTintColor(Color.parseColor("#99000FF"));
// 设置一个样式背景给导航栏
tintManager.setNavigationBarTintResource(R.drawable.my_tint);
// 设置一个状态栏资源
tintManager.setStatusBarTintDrawable(MyDrawable);
// 设置一个颜色给状态栏
tintManager.setStatusBarTintColor(Color.parseColor("#18B4ED"));
4、然后,控件还是会顶到SystemUi上面去,在xml文件的根部,加上如下代码
android:fitsSystemWindows="true"