我正在使用兼容性库v7。
我只是想将我的操作栏(适用于Android 2.1及更高版本 - 虽然我运行Android 4.4.2)的颜色设置为纯色。
但颜色不会改变。它保持不变。
我也尝试用颜色创建一个实心的drawable,但也没有改变。
最后,我测试了是否可以更改布局的背景,我可以 - 它必须是关于动作栏背景的内容,我不会得到。
以下是代码:
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="CustomActionBarTheme"
parent="@style/Theme.AppCompat.Light.DarkActionBar">
<!-- Support library compatibility -->
<item name="actionBarStyle">@style/MyActionBar</item>
</style>
<style name="MyActionBar" parent="@style/Widget.AppCompat.ActionBar">
<item name="android:background">#0000ff</item>
</style>
</resources>
答案 0 :(得分:1)
这似乎对我有用。尝试使用资源而不是原始值。
<style name="app_theme" parent="@android:style/Theme.Holo">
<item name="android:actionBarStyle">@style/app_action_bar</item>
</style>
<style name="app_action_bar" parent="@android:style/Widget.Holo.ActionBar">
<item name="android:background">@color/google_lightest_gray</item>
<item name="android:icon">@android:color/transparent</item>
<item name="android:windowActionBarOverlay">false</item>
</style>
答案 1 :(得分:0)
在getSupportActionBar().setBackgroundDrawable(new ColorDrawable(Color.parseColor("#808080")));
中使用Activity extends SherlockActivity
或根据您的意愿使用颜色:)
答案 2 :(得分:0)
您可以使用:
getSupportActionBar().setBackgroundDrawable(getResources().getDrawable(R.color.colorname));
答案 3 :(得分:0)
使用以下代码getSupportActionBar().setBackgroundDrawable(getResources().getDrawable(R.drawable.actionbar_bg_color.xml));
actionbar_bg_color.xml
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
<solid android:color="@color/actionbar_bg"/> <!-- set desired #0000ff color in color.xml
you can use here solid color as well as gradient -->
</shape>
希望这能帮到你
答案 4 :(得分:0)
我解决了它:
我不知道为什么我无法在themes.xml中获得我想要的结果。
如果有人有答案,我将不胜感激