图片来源网络,入侵必删
很多时候,我们开发中都是要适配Android状态栏的。这篇博客分享一个操作状态栏的开源库——StatusBar,目前我开发的新项目使用这个库实现沉浸式状态栏的,希望能提高小伙伴们的开发效率。
StatusBar
StatusBar主要用来操作状态栏的,主要特性如下:
- 透明状态栏,我个人认为可以叫做沉浸式状态栏;
- 状态栏背景颜色;
- 状态栏文字颜色(亮|暗色模式);
- 支持Activity/Fragment/DrawerLayout;
- 一行代码就可以简单实现。
引入
Android Studio Arctic Fox以下引入项目:
allprojects {
repositories {
// ...
maven { url 'https://jitpack.io' }
}
}
Android Studio Arctic Fox以上引入项目,需要在settings.gradle:
dependencyResolutionManagement {
repositories {
// ...
maven { url 'https://jitpack.io' }
}
}
最后是在module的build.gradle设置:
implementation 'com.github.liangjingkanji:StatusBar:2.0.2'
透明状态栏
在onCreate()方法调用相关方法。
亮色模式:
immersive(toolbar)
暗色模式:
// 第二个参数即设置状态栏文字颜色暗色模式
immersive(toolbar, true)
注意:需要布局中的最顶部的View。
状态栏字体颜色
在onCreate()方法调用相关方法。
亮色模式:
immersive(Color.YELLOW)
暗色模式:
// 第二个参数即设置状态栏文字颜色暗色模式
immersive(Color.YELLOW, true)
辅助函数
| 函数 | 描述 |
|---|---|
| Activity.setNavigationBar | 显示导航栏 (系统开启可以隐藏, 系统未开启不能开启) |
| Activity.setFullscreen | 显示全屏 |
| Activity?.isNavigationBar | 是否存在导航栏 |
| Context?.navigationBarHeight | 导航栏高度 |
| Context?.statusBarHeight | 状态栏高度 |









网友评论