2013-01-07 8 views
5

Sto utilizzando Theme.Holo nell'app My Android corrente.Modifica dello stile del overflow della barra delle azioni

enter image description here

Sopra è l'interfaccia utente di overflow dal mio tema corrente.

Desidero personalizzare il colore di sfondo del menu di overflow su RGB (245, 243, 239) e il colore del carattere su RGB (64, 64, 64).

In seguito è la style.xml sto usando

<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> 

Come posso personalizzare tema per abbinare il colore di sfondo del menu di overflow a RGB (245, 243, 239) e il colore del carattere in RGB (64, 64, 64) nel codice sopra?

Grazie in anticipo ..

+0

auguriamo che questi collegamento Guida in su -> http: //jgilfelt.github. com/android-actionbarstylegenerator/# name = example & compat = holo & theme = light & actionbarstyle = solido & backColor = 57534b% 2C100 & secondaryColor = D6D6D6% 2C100 e tertiaryColor = F2F2F2% 2C100 & accentColor = 33B5E5% 2C100 –

+0

Ho provato questo collegamento ma non ho ottenuto l'output che voglio. Stava scavalcando altri stili che ho specificato –

risposta

3

Prova questo:

<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> 

ho trovato a this post

+0

Grazie, ha funzionato per me –

+0

Ha cambiato il colore di sfondo della mia finestra popup ma per impostare il colore del carattere su RGB (64, 64, 64) ho scritto @ style/MyDropDownListView e ma non sta cambiando il colore. Qualche idea? –

+0

Non ha funzionato per me. Io uso il tema AppCompat. –

4

di cambiare il colore del testo è possibile utilizzare:

<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> 

questo cambierà il colore del testo menu a comparsa per bianco

+0

funziona perfettamente !! Grazie – Adrian

+0

Questa è stata anche la soluzione per i miei problemi con l'utilizzo di una barra di azione leggera e l'utilizzo del colore predefinito (normalmente nero, ma bianco nel lecca-lecca - che rendeva il testo illeggibile). –

0
<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> 

Applicare lo stile di attributo android: textAppearanceLargePopupMenu" dell'oggetto