1

Hi i want to change the click Backround color of my ActionBar Menu.

i tried a lot of things with selectors and so on, but nothing works.

i don't want to use ActionBar generators or anything like this. i want to change the click event color by standard XML Code. But i don't know how.

this is my styles.xml

<resources>

<style name="keksRatingBar" parent="@android:style/Widget.RatingBar">
<item name="android:progressDrawable">@drawable/keks_ratingbar_full</item>
<item name="android:minHeight">23dip</item>
<item name="android:maxHeight">78dip</item>
</style>

<style name="MyadaptHoloLightTheme" parent="@android:Theme.Holo.Light">

<item name="android:actionBarStyle">@style/ActionBar</item>
<item name="android:popupMenuStyle">@style/ActionBarPopup</item>
</style>

<!--ActionBarBackround Color -->
<style name="ActionBar" parent="android:style/Widget.Holo.Light.ActionBar">
<item name="android:background">@color/ActionBarRed</item>
<item name="android:dropDownSelector">@color/ActionBarSelection</item>
</style>

<!-- ActionBar Backround Color Popup -->
<style name="ActionBarPopup" parent="android:style/Widget.Holo.Light.ListPopupWindow">
<item name="android:popupBackground">@color/ActionBarMenu</item>

</style>

</resources>
MandisaW
  • 971
  • 9
  • 21
User_Alex
  • 13
  • 3

1 Answers1

0

There are several different text and background (color/drawable) styles that deal with the different sections of the ActionBar.

For the Main Title and ActionBar/ActionMode background:

<style name="ColorTheme.DeviceDefault.Dark" parent="@style/Theme.AppCompat">
    <!-- ActionBar -->
    <item name="android:actionBarStyle">@style/ColorTheme.ActionBar.Dark.Solid</item>

    <item name="android:actionModeStyle">?android:actionBarStyle</item>
    <item name="android:actionModeBackground">@drawable/cab_background_top_dark</item>
</style>

<style name="ColorTheme.ActionBar.Dark.Solid" parent="@android:style/Widget.Holo.ActionBar.Solid">
    <item name="android:titleTextStyle">@style/TitleTextStyle</item>
    <item name="android:background">@drawable/ab_solid_dark</item>

    <!-- Added in API 14 -->
    <item name="android:backgroundStacked">@drawable/ab_stacked_solid_dark</item>
    <item name="android:backgroundSplit">@drawable/ab_bottom_solid_dark</item>
</style>

For the Menu Items:

<style name="ColorTheme.DeviceDefault.Dark" parent="@style/BaseTheme.DeviceDefault.Dark">

    <item name="android:actionMenuTextAppearance">@style/TitleTextStyle</item>
    <item name="android:actionMenuTextColor">?colorButtonText</item>

    [Also various action...Style attributes]
</style>

For the Overflow Menu:

<style name="ColorTheme.DeviceDefault.Dark" parent="@style/BaseTheme.DeviceDefault.Dark">
    <item name="android:popupMenuStyle">@style/ColorTheme.ActionBar.PopupMenu.Dark</item>

    <item name="android:textAppearanceLargePopupMenu">@style/PopupMenuTextStyle</item>
    <item name="android:textAppearanceSmallPopupMenu">@style/PopupMenuTextStyle.Small</item>
</style>


<style name="PopupMenuTextStyle" parent="@android:attr/textAppearance">
    <item name="android:textColor">?colorTitleText</item>

    <item name="android:typeface">sans</item>
    <item name="android:textSize">@dimen/text_size_small_plus</item>
    <item name="android:textStyle">normal</item>
</style>

<style name="PopupMenuTextStyle.Small">
    <item name="android:textSize">@dimen/text_size_small</item>
</style>

Also note that some of these are API 11+ or API 14+ only, so to use lower-SDK versions, you'll need the AppCompat Support Library, and drop the "android:" namespace. So for example, "android:actionBarStyle" would be "actionBarStyle" on pre-API 11 styles.

MandisaW
  • 971
  • 9
  • 21