17

我正在尝试更改低于 21 的 API 级别的状态栏颜色。通过更改主题样式中的主颜色,我们可以更改 API 级别 21 的状态栏颜色。

应用商店

我正在寻找如何更改较低版本的状态栏颜色

谁能帮帮我吗 ?

4

4 回答 4

15

Lollipop 可以更改状态栏的颜色

但实际上您可以更改 Api >= 19 的状态栏颜色

在 value-v19 put 的样式里面

<?xml version="1.0" encoding="utf-8"?>
<resources>

        <style name="AppTheme" parent="MaterialDrawerTheme.Light">
                <!-- Customize your theme here. -->
                <item name="android:windowNoTitle">true</item>
                <item name="android:windowTranslucentStatus">true</item>
                .....
        </style>
</resources>

状态栏的背景颜色将变为透明颜色,并且要为它着色,您只需在您的应用程序中添加一个背景颜色,以便状态栏采用该颜色

希望这是明确和有帮助的

于 2015-12-04T11:05:18.890 回答
4

更改状态栏颜色功能仅从 Lollipop 开始可用。较低的操作系统版本没有此功能。您无法更改棒棒糖前设备中的状态栏颜色。

于 2015-12-04T09:35:35.423 回答
3

迄今为止,最新版本也不支持状态栏着色AppCompat v7:23.1.0

看看Android 开发者博客文章

从帖子:

在旧平台上,AppCompat尽可能模拟颜色主题。目前,这仅限于为操作栏和一些小部件着色。

这意味着 AppCompat 库只会在 Lollipop 及更高版本上着色状态栏。

于 2015-12-04T09:40:33.370 回答
0

<< 这不是最好的解决方案(但可能是唯一的解决方案),但它有效>>

在 API lvl v21 下,您可以通过更改styles.xml文件和您正在使用的主题中的colorPrimaryDark(有时是colorPrimary)属性来更改状态栏颜色。

现在这对您来说可能或很多不可行,它可能看起来像一个黑客,甚至对您来说是显而易见的。但我只是在这里发布它,因为它对我有用,而且我真的没有使用 colorPrimary 或 colorPrimaryDark 所以我没有问题。

于 2020-10-03T13:20:20.013 回答