我有一个应用程序,它使用主题属性(颜色Primary黑暗)来为Android v21上的状态栏着色:
这很好。现在,当用户长按列表项并进入上下文操作模式时,我可以使用属性actionModeBackground为CAB栏上色,使其看起来像这样:
所以动作栏是灰色的,这是我想要的,但状态栏仍然使用主题深色。我不想要那个,我想换成深灰色或者黑色。
我该怎么做?我看不到任何主题属性在这里起作用。
如果您使用AppCompat,那么您可以在colors.xml中像这样更改颜色
<color name="abc_decor_view_status_guard_light" tools:override="true">@color/colorBackgroundLight</color>
<color name="abc_decor_view_status_guard" tools:override="true">@color/colorBackgroundDark</color>
将其放在您的应用程序主题(style.xml和v21style.xml)上,或者为您想要更改的位置创建自定义主题。
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light">
<item name="colorPrimary">@color/color_primary</item>
<item name="colorPrimaryDark">@color/color_secondary</item>
<item name="colorAccent">@color/color_accent</item>
**<item name="android:statusBarColor">@color/**YOUR_COLOR**</item>**
</style>
</resources>
private int statusBarColor;
@Override
public boolean onCreateActionMode(ActionMode mode, Menu menu) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
//hold current color of status bar
statusBarColor = getWindow().getStatusBarColor();
//set your gray color
getWindow().setStatusBarColor(0xFF555555);
}
...
}
...
@Override
public void onDestroyActionMode(ActionMode mode) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
//return to "old" color of status bar
getWindow().setStatusBarColor(statusBarColor);
}
...
}
});
问题内容: 我正在尝试将状态栏的颜色更改为蓝色或其他某种颜色。 这可能吗,或者Apple不允许吗? 问题答案: 注意:此解决方案在iOS 13及更高版本下失败。 Plist中的第一个设置为 输出屏幕截图如下
我不知道如何在Android上更改操作栏项目“onPressed”的颜色。我说的不是动作条的背景色,而是蓝色覆盖状态。我怎样才能改变它的颜色或者至少去掉它?例如,带有homeAsUpIndicator的应用程序图标。 我试图更改操作栏样式和菜单项样式,但没有任何效果。 谢谢 编辑此处是我迄今为止的实现: 我的风格xml: 然后我有一个动作巴罗哥的可抽绳: 操作栏项目的“我的菜单xml”: 最后,项
我对这一切都不熟悉。我到处寻找这个小问题的解决办法。有没有办法改变状态栏的颜色?当我使用a色的时候,我也喜欢a色。蓝色我可以看到状态栏中的文本质量不好。 谢谢
但是我没有找到更改状态文本颜色的方法。如果我将颜色Primary深色设置为白色,我看不到状态栏文本的图标,因为它们的颜色也是白色的。 有什么办法可以更改状态栏文字颜色吗?
我当前的应用程序运行在iOS 5和iOS 6上。 导航栏的颜色为橙色,状态栏的背景颜色为黑色,文本颜色为白色。但是,当我在iOS 7上运行相同的应用程序时,我观察到状态栏看起来是透明的,与导航栏的背景颜色相同,并且状态栏文本颜色为黑色。 因此,我无法区分状态栏和导航栏。 如何使状态栏与iOS 5和iOS 6中的状态栏相同,即黑色背景色和白色文本色?如何以编程方式执行此操作?
对于ios 13,我无法设置状态栏的文本颜色。如何查看statusBarManager?如何仅更改文本颜色? 由于: 由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因是:“UIApplication上调用了-statusBar或-statusBarWindow的应用程序:由于不再有状态栏或状态栏窗口,必须更改此代码。”。“请使用“场景”窗口上