Ye-Miao / StatusBarUtil

Android沉浸式状态栏,支持状态栏渐变色,纯色, 全屏,亮光、暗色模式,适配android 4.4 -10.0机型,支持刘海屏,滴水屏
Apache License 2.0
435 stars 82 forks source link
android android-app android-library android-utils java statusbarutil utility-library

StatusBarUtil

Android沉浸式状态栏,支持状态栏渐变色,纯色, 全屏,亮光、暗色模式,适配android 4.4 -10.0机型,支持刘海屏,滴水屏

[面向Android开发]() [GitHub stars]() [GitHub forks]() [GitHub issues]() [GitHub license]()

English

Apk

Download 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布局
    <android.support.v7.widget.Toolbar
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="?attr/actionBarSize"
    android:background="@color/blue"/>

    activity中使用

    StatusBarUtil.setPaddingTop(this, mToolbar);
  • 可以将Toolbar高度延伸到状态栏以实现渐变色状态栏 XML布局
    <android.support.v7.widget.Toolbar
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="?attr/actionBarSize"
    android:background="@color/gradient_color"

    activity中使用

    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.