如何将 android 状态栏颜色更改为白色并将状态栏图标颜色更改为灰色
How to change android status bar color to white and status bar icon color to grey
我正在尝试将状态栏的颜色更改为带有灰色图标的白色。我已经尝试了几乎所有解决这个问题的代码解决方案,但没有一个对我有用。
我正在使用这个 java 函数来更改它,我还发布了我的样式 (21) 代码。
public static void statusBarColor(Window window, Context ctx) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
//Window window = getActivity().getWindow();
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
window.setStatusBarColor(ctx.getResources().getColor(R.color.statusbar_color));
}
}
这是我的 java 代码,但在尝试了一千次后仍然无法正常工作。
下面是我的 style.xml (21)
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
<item name="android:statusBarColor">@android:color/transparent</item>
<item name="android:windowLightStatusBar" tools:targetApi="23">true</item>
</style>
如果您认为它与其他一些问题重复,那么我现在应该让您知道我已经尝试了 3,4 页的 google 搜索并实现了它们。
可以用这个标志实现:
<item name="android:windowLightStatusBar">true</item>
不幸的是,它从 API 23 开始可用,因此您必须在 values-v23/styles.xml
中指定它。有关详细信息,请参阅 。
此功能没有任何向后移植,因此在撰写本文时它无法在任何较低的 23 位上运行。
我正在尝试将状态栏的颜色更改为带有灰色图标的白色。我已经尝试了几乎所有解决这个问题的代码解决方案,但没有一个对我有用。
我正在使用这个 java 函数来更改它,我还发布了我的样式 (21) 代码。
public static void statusBarColor(Window window, Context ctx) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
//Window window = getActivity().getWindow();
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
window.setStatusBarColor(ctx.getResources().getColor(R.color.statusbar_color));
}
}
这是我的 java 代码,但在尝试了一千次后仍然无法正常工作。 下面是我的 style.xml (21)
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
<item name="android:statusBarColor">@android:color/transparent</item>
<item name="android:windowLightStatusBar" tools:targetApi="23">true</item>
</style>
如果您认为它与其他一些问题重复,那么我现在应该让您知道我已经尝试了 3,4 页的 google 搜索并实现了它们。
可以用这个标志实现:
<item name="android:windowLightStatusBar">true</item>
不幸的是,它从 API 23 开始可用,因此您必须在 values-v23/styles.xml
中指定它。有关详细信息,请参阅
此功能没有任何向后移植,因此在撰写本文时它无法在任何较低的 23 位上运行。