Изменение стиля переполнения панели действий

Я использую Theme.Holo в приложении My Current для Android.

введите здесь описание изображения

Выше показан интерфейс переполнения из моей текущей темы.

Я хочу настроить цвет фона дополнительного меню на RGB (245, 243, 239) и цвет шрифта на RGB (64, 64, 64).

Ниже приведен файл style.xml, который я использую.

<style name="CustomActivityTheme" parent="@android:style/Theme.Holo">
    <item name="android:actionBarStyle">@style/CustomActivityTheme.ActionBar</item>
    <item name="android:actionMenuTextColor">#000000</item>
    <item name="android:divider">@drawable/action_bar_div</item>
    <item name="android:actionOverflowButtonStyle">@style/MyActionButtonOverflow</item>
</style>

<style name="MyActionButtonOverflow" parent="android:style/Widget.Holo.ActionButton.Overflow">
    <item name="android:src">@drawable/overflow</item>
</style>

<style name="CustomActivityTheme.ActionBar" parent="@android:style/Widget.Holo.Light.ActionBar">
    <item name="android:background">@drawable/actionbar_bg</item>
    <item name="android:titleTextStyle">@style/CustomActivityTheme.ActionBar.Text</item>
    <item name="android:subtitleTextStyle">@style/CustomActivityTheme.ActionBar.Text</item>
</style>

<style name="CustomActivityTheme.ActionBar.Text" parent="@android:style/TextAppearance">
    <item name="android:textColor">#000000</item>
    <item name="android:textSize">16sp</item>
</style>

<style name="activated" parent="android:Theme.Holo">
    <item name="android:background">?android:attr/activatedBackgroundIndicator</item>
</style>

<!-- style for removing the floating dialog -->
<style name="CustomDialogTheme">
    <item name="android:windowIsFloating">false</item>
    <item name="android:windowNoTitle">true</item>
</style>

<!-- style for transparent image resource  activity -->

<style name="Theme.Transparent" parent="android:Theme">
    <item name="android:windowIsTranslucent">true</item>
    <item name="android:windowBackground">@android:color/transparent</item>
    <item name="android:windowContentOverlay">@null</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowIsFloating">false</item>
    <item name="android:backgroundDimEnabled">true</item>
    <item name="android:windowAnimationStyle">@style/MyAnimation.Window</item>
</style>

<!-- Animations for a non-full-screen window or activity. -->
<style name="MyAnimation.Window" parent="@android:style/Animation.Dialog">
    <item name="android:windowEnterAnimation">@anim/grow_from_middle</item>
    <item name="android:windowExitAnimation">@anim/shrink_to_middle</item>
</style>

<!-- style for transparent audio and video resource  activity -->

<style name="Theme.Transparent_Player" parent="android:Theme">
    <item name="android:windowIsTranslucent">true</item>
    <item name="android:windowBackground">@android:color/transparent</item>
    <item name="android:windowContentOverlay">@null</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowIsFloating">false</item>
    <item name="android:backgroundDimEnabled">true</item>
    <item name="android:windowAnimationStyle">@style/MyPlayerAnimation.Window</item>
</style>

<!-- Animations for a non-full-screen window or activity. -->
<style name="MyPlayerAnimation.Window" parent="@android:style/Animation.Dialog">
    <item name="android:windowEnterAnimation">@anim/grow_from_action_bar</item>
    <item name="android:windowExitAnimation">@anim/shrink_to_action_bar</item>
</style>

How can I customize theme to match overflow menu's background color to RGB (245, 243, 239), and the font color to RGB (64, 64, 64) in above code?

Заранее спасибо..


person Akbari Dipali    schedule 07.01.2013    source источник
comment
Надеюсь, эта ссылка поможет вам --› jgilfelt.github.com/android-actionbarstylegenerator/   -  person Vikalp Patel    schedule 07.01.2013
comment
Я пробовал эту ссылку, но я не получил результат, который я хочу. Он переопределял другие стили, которые я указал   -  person Akbari Dipali    schedule 07.01.2013


Ответы (3)


Попробуй это:

<style name="CustomActivityTheme" parent="@android:style/Theme.Holo">
    ...
    <item name="android:popupMenuStyle">@style/MyPopupMenu</item>
    ...
</style>

<style name="MyPopupMenu" parent="android:style/Widget.Holo.Light.ListPopupWindow">
    <item name="android:background">#f5fdef</item> 
</style>

Я нашел его в этом сообщении.

person Andy McSherry    schedule 07.01.2013
comment
Он изменил цвет фона моего всплывающего окна, но чтобы установить цвет шрифта на RGB (64, 64, 64), я написал ‹item name=android:dropDownListViewStyle›@style/MyDropDownListView‹/item› и ‹style name=MyDropDownListView parent =android:style/Widget.Holo.ListView.DropDown› ‹!-- Это оранжевый цвет текста --› ‹item name=android:textColor›#CC3232‹/item› ‹/style›, но он не меняется цвет. Есть идеи? - person Akbari Dipali; 07.01.2013
comment
Йоэль. Вопрос не касается темы AppCompat, поэтому этот ответ не касается ее. Вероятно, вам следует открыть другой вопрос, который лучше соответствует вашим потребностям. - person Andy McSherry; 04.06.2014
comment
мы можем сделать это на спиннер? - person ralphgabb; 15.05.2015

чтобы изменить цвет текста, вы можете использовать:

<item name="android:textAppearanceLargePopupMenu" >@style/m_textAppearanceLargePopupMenu</item>

<item name="android:textAppearanceSmallPopupMenu" >@style/m_textAppearanceSmallPopupMenu</item>

 <style name="m_textAppearanceLargePopupMenu" parent="@android:style/TextAppearance.Holo.Widget.PopupMenu.Large">
        <item name="android:textColor">#FFF</item>
    </style>

    <style name="m_textAppearanceSmallPopupMenu" parent="@android:style/TextAppearance.Holo.Widget.PopupMenu.Small">
        <item name="android:textColor">#FFF</item>
    </style>

это изменит цвет текста всплывающего меню на белый

person Mohammad Ersan    schedule 08.12.2013
comment
Это также было исправлением моих проблем с наличием светлой панели действий и использованием цвета текста по умолчанию (обычно черного, но белого в леденцах, что делало текст нечитаемым). - person Paul Ruiz; 01.12.2014

<style name="MyActionBar3" parent="@style/Widget.AppCompat.Light.ActionBar">
    <item name="android:background">@color/ActionBarBackground</item>         
</style>

<style name="MyActionBarDropDownStyle" parent="">
    <item name="android:background">#00FF00</item>        
    <item name="android:divider">#ff0000</item>
    <item name="android:dividerHeight">1dp</item> 
    <item name="android:textColor">#FFFFFF</item>     
    <item name="android:textSize">10sp</item>
</style>

<style name="MyTextStyle" parent="@style/Widget.AppCompat.Light.Base.ListPopupWindow">
    <item name="android:popupBackground">#FF0000</item>        
</style>

Примените стиль к атрибуту элемента android:textAppearanceLargePopupMenu.

person Sourav Chakraborty    schedule 29.03.2015