如何将Android状态栏背景颜色设置为白色

时间:2020-04-17 15:57:07

标签: android themes

我应该在Android应用中使用哪种主题来使状态栏变成白色,就像Instagram上的那样。

我使用Theme.Appcompat.Light作为主题。

这是我的colors.xml:

<!--?xml version="1.0" encoding="UTF-8"?-->
<resources>
    <color name="primaryColor">#ffffff</color>
    <color name="primaryLightColor">#ffffff</color>
    <color name="primaryDarkColor">#cccccc</color>
    <color name="secondaryColor">#3f51b5</color>
    <color name="secondaryLightColor">#757de8</color>
    <color name="secondaryDarkColor">#002984</color>
    <color name="primaryTextColor">#000000</color>
    <color name="secondaryTextColor">#ffffff</color>
</resources>

Instagram风格:

Instagram style

我的应用程序:

My app

1 个答案:

答案 0 :(得分:0)

实际上colorPrimaryDark负责状态栏的颜色(但不仅限于此)。

从23个SDK中,您可以直接设置状态栏颜色。

public void setStatusBarColor(final int color) {
    Window window = getWindow();
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
        window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
        window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
        window.setStatusBarColor(color);
    }
}