StatusBarUtil
Introduction: Android 沉浸式状态栏,支持状态栏渐变色,纯色, 全屏,亮光、暗色模式,适配 android 4.4 -10.0 机型,支持刘海屏,滴水屏
Tags:
Android 沉浸式状态栏,支持状态栏渐变色,纯色, 全屏,亮光、暗色模式,适配 android 4.4 -10.0 机型,支持刘海屏,滴水屏
Apk
机型演示
Android-9.0 | Android-4.4 |
---|---|
Gradle 引用
repositories {
...
maven { url 'https://www.jitpack.io' }
}
dependencies {
implementation 'com.github.Ye-Miao:StatusBarUtil:1.7.5'
}
使用方法
1.设置纯色状态栏
activity 中使用
StatusBarUtil.setColor(this, mColor);
2.设置渐变色状态栏
XML 布局
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@drable/gradient_color"/>
activity 中使用
StatusBarUtil.setGradientColor(this, mToolbar);
3.设置透明状态栏
activity 中使用
StatusBarUtil.setTransparentForWindow(this);
特别注意,如果设置的是白色透明状态栏模式,那么状态栏上方的字体颜色会被覆盖,显示不清楚,只需要再增加一句
StatusBarUtil.setDarkMode(this);
4.设置亮色状态栏,改变状态栏上方的字体颜色(适用于 Android6.0 及以上)
activity 中使用
StatusBarUtil.setLightMode(this);
5.设置暗色状态栏,改变状态栏上方的字体颜色(适用于 Android6.0 及以上)
activity 中使用
StatusBarUtil.setDarkMode(this);
6.增加 View 的 paddingTop,增加的值是状态栏高度(具体用途可以在 demo 中查看)
- 可以将 Toolbar 高度延伸到状态栏以实现纯色状态栏 XML 布局
activity 中使用<android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="@color/blue"/>
StatusBarUtil.setPaddingTop(this, mToolbar);
- 可以将 Toolbar 高度延伸到状态栏以实现渐变色状态栏 XML 布局
activity 中使用<android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:background="@color/gradient_color"
StatusBarUtil.setPaddingTop(this, mToolbar);
License
``` Copyright 2019 Ye-Miao
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.