10

Androidのオプションメニューをスキンしようとしています。カスタムテーマで背景色を変えたのですが、なぜか文字色が変わりません。

私のテーマ

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

オプションメニューフォントのマイスタイル

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

ボタンの色セレクター 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>

その色はただの 16 進数の色です #c4c4c4

ここで何が欠けていますか?

4

2 に答える 2

0

この質問は、さまざまな方法で何度も尋ねられてきました。XML レイアウトでは、背景色を変更できますが、テキストの色を変更することはできません:

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

ただし、カスタム クラスを記述して、メニューのスキニングを実行できます。

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

于 2013-03-13T03:51:55.183 に答える