224-android设置状态栏颜色

本文详细介绍了如何在Android设备上使用API21及以上的版本设置状态栏的颜色。通过设置Window对象的FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS标志并调用setStatusBarColor方法,可以轻松实现状态栏颜色的自定义。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >





android设置状态栏颜色


我们先来看看官方文档

setStatusBarColor
added in API level 21
public abstract void setStatusBarColor (int color)

Sets the color of the status bar to color. For this to take effect, the window must be drawing the system bar backgrounds with WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS and WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS must not be set. If color is not opaque, consider setting View.SYSTEM_UI_FLAG_LAYOUT_STABLE and View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN.

The transitionName for the view background will be "android:status:background".




我们来翻译一下

方法名:
setStatusBarColor    
设置状态栏颜色

在API21加入
给状态栏设置颜色
为了产生效果,window对象必须设置
WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS
以及不能设置
WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS 

如果颜色是透明的,那么要设置
View.SYSTEM_UI_FLAG_LAYOUT_STABLE 
View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN


好了,看完文档
我们来试一试


在activity里面设置一下

        Window window = getWindow();
        window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
        window.setStatusBarColor(ColorUtil.getColor(R.color.color_theme_blue));


OK
搞定






 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值