首先,它不是How to change the background color of android status bar号的复制品

如何更改状态栏的 colored颜色 ,该 colored颜色 应与导航栏中的 colored颜色 相同.

我希望状态栏 colored颜色 与导航栏 colored颜色 相同

在此处输入图像描述

推荐答案

更新:

棒棒糖:

public abstract void setStatusBarColor (int color)

在API级别21中添加

Android棒棒糖带来了改变应用程序中状态栏 colored颜色 的能力,以获得更身临其境的用户体验,并与Google的Material Design Guidelines保持一致.

下面是如何使用101中引入的新window.setStatusBarColor方法更改状态栏的 colored颜色 .

更改状态栏的 colored颜色 还需要在窗口上设置两个附加标志;您需要添加FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS标志并清除FLAG_TRANSLUCENT_STATUS标志.

工作代码:

import android.view.Window;

...

Window window = activity.getWindow();

// clear FLAG_TRANSLUCENT_STATUS flag:
window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);

// add FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS flag to the window
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);

// finally change the color
window.setStatusBarColor(ContextCompat.getColor(activity,R.color.my_statusbar_color));

官方开发者参考:setStatusBarColor(int)

示例:material-design-everywhere

Chris Banes Blog- appcompat v21: material design for pre-Lollipop devices!

在此处输入图像描述

视图背景的transitionName将是android:status:background.

Android相关问答推荐

Jetapck Compose:将Compose BOM更新为最新版本&2024.01.00&Quot;CircularProgressIndicator后出现错误

请求标头为空/无法通过拦截器获取

使用Android Jetpack Compose,为子Composable定义ViewModel是不是一种糟糕的做法?

Android手柄注射周期错误,多个模块引用一个核心模块

如何在DownloadManager Android中显示ProgressBar和Complete Listener

Android 14预测性背部手势-闪烁的白色背景色

可组合函数无限地从视图模型获取值

从 Jetpack Compose 中的图像中删除默认高度

Android Jetpack Compose全宽度抽屉优化

需要在按钮 onclick 上从 string.xml 获取值. @Composable 调用只能在@Composable 函数的上下文中发生

如何仅使用您的 Android 应用程序定位平板电脑?

为一组闪烁的可组合项制作动画,控制同步/定时

在 kotlin 中动态添加 GridView

如何在 Jetpack Compose 中添加多个标签

处理程序 postDelayed 方法不起作用,kotlin 应用程序卡在启动画面上

如何修复 api 调用在浏览器中工作但在 android studio 中为 403

Android - 水平(从右到左)圆形背景 colored颜色 过渡

WindowManager 内的 RecyclerView 不更新

如何使在库范围之外无法访问的接口的具体实现.?

(Android) 如何在一对多关系中将子 ID 与父级匹配