Изменить цвет фона на Android ActionBar
Я пытался изменить цвет фона моего ActionBar в моем приложении. Но это, кажется, дает мне некоторую ошибку.
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- the theme applied to the application or activity -->
<style name="CustomActionBarTheme"
parent="@style/Theme.AppCompat.Light.DarkActionBar">
<item name="android:actionBarStyle">@style/MyActionBar</item>
<!-- Support library compatibility -->
<item name="actionBarStyle">@style/MyActionBar</item>
</style>
<!-- ActionBar styles -->
<style name="MyActionBar"
parent="@style/Widget.AppCompat.Light.ActionBar.Solid.Inverse">
<item name="android:background">@drawable/actionbar_background</item>
<!-- Support library compatibility -->
<item name="background">@drawable/actionbar_background</item>
</style>
Я получаю ошибку на
<item name="background">@drawable/actionbar_background</item>
Я просто хочу изменить фон actionBar на другой цвет.
Помощь будет оценена. Спасибо
3 ответа
Если вы нацелены на минимальный уровень API 11, вы можете изменить цвет фона ActionBar, определив собственный стиль, как:
<resources>
<style name="MyTheme" parent="@android:style/Theme.Holo.Light">
<item name="android:actionBarStyle">@style/MyActionBar</item>
</style>
<style name="MyActionBar" parent="@android:style/Widget.Holo.Light.ActionBar">
<item name="android:background">ANY_HEX_COLOR_CODE</item>
</style>
</resources>
И установите "MyTheme" в качестве темы для приложения / деятельности.
Вы также можете использовать этот онлайн-инструмент для создания полностью настроенного ActionBar. Вот инструмент
Также возможно изменить цвет ActionBar
программно, просто позвоните по этой строке:
getActionBar().setBackgroundDrawable(new ColorDrawable(getResources().getColor(R.color.my_color)));
Это также возможно через getSupportActionBar()
(если вы используете ActionBarSherlock).