news 2026/7/2 8:08:35

实现状态栏透明

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
实现状态栏透明

状态栏在themes.xml文件里面添加以下两条可以将状态栏设置为透明状态;

<item name="android:statusBarColor">@android:color/transparent</item> <item name="android:windowLightStatusBar">true</item>

这两天只做一件事:把状态栏本身颜色变透明不会强制让页面布局向上延伸盖住状态栏

页面能不能填充到状态栏,由根布局类型 + fitsSystemWindows控制。

所以我使用时候ConstraintLayout布局生效了,LinearLayout没有生效。

两者底层区别:

  1. ConstraintLayout 布局规则:子控件约束到 parent 最顶端,会主动向上侵入状态栏区域Constraint 是坐标约束布局,layout_constraintTop_toTopOf="parent"强制控件贴屏幕最顶部,无视状态栏分隔,背景会向上铺满状态栏。
  2. LinearLayout流式顺序排列;默认从状态栏下方开始绘制,不会主动向上延伸;加上居中 + 全局 padding,顶部空白底色直接露出来

解决LinearLayout布局下状态栏和主题颜色不同时候有以下两种方法:

  • 根 LinearLayout 加两行属性
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center" android:padding="16dp" android:background="@drawable/ic_backguand" android:orientation="vertical" <!-- 新增这两行 --> android:fitsSystemWindows="false" android:clipToPadding="false">

clipToPadding="false":允许布局背景绘制到 padding 区域外,向上填充状态栏。

  • 强制布局顶到屏幕最顶端
    import android.view.WindowManager override fun onCreate(savedInstanceState: Bundle?) { window.setFlags( WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS, WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS ) super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) }

    不要给 LinearLayout 设置fitsSystemWindows="true",这个属性会自动在顶部加状态栏高度 padding

如果不想修改LinearLayout布局,可以在主题彻底统一透明状态栏

<style name="Base.Theme.Demo" parent="Theme.Material3.DayNight.NoActionBar"> <item name="android:statusBarColor">@android:color/transparent</item> <item name="android:windowLightStatusBar">true</item> <!-- 新增两行关键属性 --> <item name="android:windowDrawsSystemBarBackgrounds">true</item> <item name="android:windowTranslucentStatus">true</item> </style>
  • windowTranslucentStatus:状态栏完全透明,页面背景向上填充
  • windowDrawsSystemBarBackgrounds:允许页面绘制覆盖状态栏区域
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/2 8:06:26

三步实现百度文库文档免费获取:技术原理与实践指南

三步实现百度文库文档免费获取&#xff1a;技术原理与实践指南 【免费下载链接】baidu-wenku fetch the document for free 项目地址: https://gitcode.com/gh_mirrors/ba/baidu-wenku 百度文库作为国内最大的文档分享平台&#xff0c;汇集了海量的学习资料和技术文档&a…

作者头像 李华
网站建设 2026/7/2 8:06:23

第一次去医院资料别临时翻

很多人第一次去医院&#xff0c;最慌的不是排队&#xff0c;也不是等叫号&#xff0c;而是医生一问情况&#xff0c;自己开始在手机相册、聊天记录、文件夹里来回翻。越翻越急&#xff0c;越急越想不起来。出门前花10分钟&#xff0c;把资料提前放到同一个文件夹里&#xff0c;…

作者头像 李华
网站建设 2026/7/2 8:03:24

格式转换一键搞定!视频、音频、图片、文档轻松互转!

大家好&#xff0c;这里是科技乐小天&#xff0c;在我们工作或者学习中&#xff0c;时常会遇到某些文件的格式&#xff0c;因为一些软件不支持&#xff0c;导致无法正常打开的情况&#xff0c;这时我们就需要把这些格式转换成软件所支持的格式&#xff0c;而目前很多格式转换工…

作者头像 李华
网站建设 2026/7/2 8:03:12

向日葵CLI如何赋能批量设备远程运维管理?附AI自动化管理实战

在企业的数字化进程中&#xff0c;一个看似简单却日益尖锐的问题正在困扰着越来越多的IT团队&#xff1a;设备数量从几十台增长到成百上千台&#xff0c;甚至上万台&#xff0c;而运维团队的人力却几乎没有增长。连锁餐饮门店的收银机、POS机、厨房显示系统&#xff0c;跨区域分…

作者头像 李华
网站建设 2026/7/2 8:03:09

5分钟快速上手PPTist:免费网页版PPT制作工具的终极指南

5分钟快速上手PPTist&#xff1a;免费网页版PPT制作工具的终极指南 【免费下载链接】PPTist PowerPoint-ist&#xff08;/pauəpɔintist/&#xff09;, An online presentation application that replicates most of the commonly used features of MS PowerPoint, allowing f…

作者头像 李华