如何更改状态栏颜色

Posted

技术标签:

【中文标题】如何更改状态栏颜色【英文标题】:How to change Status bar color 【发布时间】:2021-11-05 11:17:52 【问题描述】:

在我的应用程序中,当我使用浅色主题时它可以正常工作,但是当我使用深色主题时,除了状态(主要深色)栏仍然是浅色之外,它可以正常工作。 如何在暗模式下将其更改为暗... Here is what currently have

如何使主暗色在浅色主题中使用一种浅色,在深色模式中使用另一种深色

【问题讨论】:

这能回答你的问题吗? change according to dark mode 【参考方案1】:

这可能有效。它对我有用。

方法体

// Method Definition
public static void blackIconStatusBar(Activity activity, int color) 

    activity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
    activity.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
    activity.getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_FULLSCREEN);
    activity.getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR);
    activity.getWindow().setStatusBarColor(ContextCompat.getColor(activity, color));


调用方法

// set StatusBar Colour
blackIconStatusBar(this, R.color.white_grey_lite);

【讨论】:

以上是关于如何更改状态栏颜色的主要内容,如果未能解决你的问题,请参考以下文章

如何在 iOS 7 上更改状态栏背景颜色和文本颜色?

如何根据主题更改状态栏/导航栏颜色/亮度?

打开 MFSideMenu 时如何更改状态栏颜色

如何更改棒棒糖设备状态栏的颜色? [复制]

如何在iOS 7上更改状态栏背景颜色和文本颜色? Warif Akhand Rishi

如何更改状态栏颜色?