2012-02-16 18 views
10

Próbuję przeskalować menu opcji na Androidzie. Zmieniłem kolor tła za pomocą niestandardowego motywu, ale z jakiegoś powodu nie mogę zmienić koloru tekstu.Menu opcji karnacji Android

moim tematem

<style name="default" parent="@android:style/Theme.NoTitleBar"> 

    <!-- Menu panel colors --> 
    <item name="android:panelBackground">@color/optionsMenuBackgroundColor</item> 
    <item name="android:panelFullBackground">@color/optionsMenuBackgroundColor</item> 

    <!-- Menu item colors --> 
    <item name="android:itemTextAppearance">@style/OptionsMenuFont</item> 

</style> 

My Style dla czcionki menu Opcje

<style name="OptionsMenuFont" parent="@android:style/TextAppearance.Widget.IconMenu.Item"> 
    <item name="android:textColor">@drawable/menu_item_font</item> 
</style> 

Moja odkształcalne dla selektora przycisk koloru menu_item_font.xml

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android" > 

    <!-- Put other state colors up top --> 


    <item android:color="@color/optionsMenuTextColor" /> 

</selector> 

że kolor jest tylko hex kolor # c4c4c4

Czego mi tu brakuje?

+0

Czy po prostu starał ' # c4c4c4'? – Barney

+0

Całkowicie zapomniałem o tym wątku. Nie pamiętam nawet, jaki to był projekt. Czy powinienem po prostu usunąć to pytanie? – smokingoyster

Odpowiedz

0

To pytanie było zadawane na różne sposoby kilka razy. Z układami XML, można zmienić kolor tła, ale nie może zmienić kolor tekstu:

http://code.google.com/p/android/issues/detail?id=4441

Można jednak napisać niestandardowej klasy do osiągnięcia skórowania menu:

http://www.techjini.com/blog/customizing-background-and-text-color-in-options-menu-android/

+0

To nie działa dla mnie, po prostu dostaję 'IllegalStateException' ponieważ fabryka została ustawiona. – BornToCode

+0

To nie jest prawda. Możesz zmienić kolor tekstu, określając go w swoim motywie (styles.xml). – Luis

1

Możesz zmienić kolor tekstu, ale powinien on być pod tagiem textColor. Nie można umieścić wyciągu w żadnym kolorze tekstu (ani w stylach, ani w układach). Jeśli chcesz zmienić kolor, zmienić swój styl do tego:

<style name="OptionsMenuFont" parent="@android:style/TextAppearance.Widget.IconMenu.Item"> 
    <item name="android:textColor">#c4c4c4</item> 
</style> 
Powiązane problemy