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

本文主要是介绍Android 沉浸式状态栏,支持状态栏渐变色,纯色, 全屏,亮光、暗色模式,适配 android 4.4 -10.0 机型,支持刘海屏,滴水屏,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

StatusBarUtil

项目地址:Ye-Miao/StatusBarUtil 

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

更多:作者   提 Bug   

标签:

 

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

    

English

Apk

Download Apk

机型演示

Android-9.0Android-4.4

Gradle 引用

repositories {...maven { url 'https://www.jitpack.io' }
}dependencies {implementation 'com.github.Ye-Miao:StatusBarUtil:1.7.5'
}

使用方法

1.设置纯色状态栏

XML 布局

<android.support.v7.widget.Toolbarandroid:id="@+id/toolbar"android:layout_width="match_parent"android:layout_height="?attr/actionBarSize"android:background="@color/blue"/>

activity 中使用

StatusBarUtil.setColor(this, mColor);

2.设置渐变色状态栏

XML 布局

<android.support.v7.widget.Toolbarandroid: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.Toolbarandroid: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.Toolbarandroid:id="@+id/toolbar"android:layout_width="match_parent"android:layout_height="?attr/actionBarSize"android:background="@color/gradient_color"
    
    activity 中使用
    StatusBarUtil.setPaddingTop(this, mToolbar);

这篇关于Android 沉浸式状态栏,支持状态栏渐变色,纯色, 全屏,亮光、暗色模式,适配 android 4.4 -10.0 机型,支持刘海屏,滴水屏的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/203130

相关文章

Android kotlin中 Channel 和 Flow 的区别和选择使用场景分析

《Androidkotlin中Channel和Flow的区别和选择使用场景分析》Kotlin协程中,Flow是冷数据流,按需触发,适合响应式数据处理;Channel是热数据流,持续发送,支持... 目录一、基本概念界定FlowChannel二、核心特性对比数据生产触发条件生产与消费的关系背压处理机制生命周期

Android ClassLoader加载机制详解

《AndroidClassLoader加载机制详解》Android的ClassLoader负责加载.dex文件,基于双亲委派模型,支持热修复和插件化,需注意类冲突、内存泄漏和兼容性问题,本文给大家介... 目录一、ClassLoader概述1.1 类加载的基本概念1.2 android与Java Class

Java设计模式---迭代器模式(Iterator)解读

《Java设计模式---迭代器模式(Iterator)解读》:本文主要介绍Java设计模式---迭代器模式(Iterator),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录1、迭代器(Iterator)1.1、结构1.2、常用方法1.3、本质1、解耦集合与遍历逻辑2、统一

Java 线程安全与 volatile与单例模式问题及解决方案

《Java线程安全与volatile与单例模式问题及解决方案》文章主要讲解线程安全问题的五个成因(调度随机、变量修改、非原子操作、内存可见性、指令重排序)及解决方案,强调使用volatile关键字... 目录什么是线程安全线程安全问题的产生与解决方案线程的调度是随机的多个线程对同一个变量进行修改线程的修改操

Android DataBinding 与 MVVM使用详解

《AndroidDataBinding与MVVM使用详解》本文介绍AndroidDataBinding库,其通过绑定UI组件与数据源实现自动更新,支持双向绑定和逻辑运算,减少模板代码,结合MV... 目录一、DataBinding 核心概念二、配置与基础使用1. 启用 DataBinding 2. 基础布局

Android ViewBinding使用流程

《AndroidViewBinding使用流程》AndroidViewBinding是Jetpack组件,替代findViewById,提供类型安全、空安全和编译时检查,代码简洁且性能优化,相比Da... 目录一、核心概念二、ViewBinding优点三、使用流程1. 启用 ViewBinding (模块级

k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)

《k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)》本文记录在K8s上运行的MySQL/MariaDB备份方案,通过工具容器执行mysqldump,结合定时任务实... 目录前言一、获取需要备份的数据库的信息二、备份步骤1.准备工作(X86)1.准备工作(arm)2.手

Redis Cluster模式配置

《RedisCluster模式配置》:本文主要介绍RedisCluster模式配置,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录分片 一、分片的本质与核心价值二、分片实现方案对比 ‌三、分片算法详解1. ‌范围分片(顺序分片)‌2. ‌哈希分片3. ‌虚

华为鸿蒙HarmonyOS 5.1官宣7月开启升级! 首批支持名单公布

《华为鸿蒙HarmonyOS5.1官宣7月开启升级!首批支持名单公布》在刚刚结束的华为Pura80系列及全场景新品发布会上,除了众多新品的发布,还有一个消息也点燃了所有鸿蒙用户的期待,那就是Ha... 在今日的华为 Pura 80 系列及全场景新品发布会上,华为宣布鸿蒙 HarmonyOS 5.1 将于 7

Android学习总结之Java和kotlin区别超详细分析

《Android学习总结之Java和kotlin区别超详细分析》Java和Kotlin都是用于Android开发的编程语言,它们各自具有独特的特点和优势,:本文主要介绍Android学习总结之Ja... 目录一、空安全机制真题 1:Kotlin 如何解决 Java 的 NullPointerExceptio