39

Androidの2つの異なるテーマに対応する、2つの異なる色の画像があります。アクションバーで使用したい。アイコンのドローアブルを参照したいのですが、テーマに依存しませんが、そのドローアブルはライトテーマの明るい色とライトテーマの暗い色を参照します。

メニュー内:

    <item
        android:id="@+id/menu_attach_existing_picture"
        android:icon="@drawable/buttonface_picture"
        android:showAsAction="always"
        android:title="@string/menu_attach_existing_picture">
    </item>

次に、スタイルで、明るいテーマでは@ drawable/buttonface_pictureを@drawable/ buttonface_picture_lightにマップし、暗いテーマでは@ drawable/buttonface_picture_darkにマップするものが必要です。

方法があるように感じますが、構文を見つけるのに苦労しています。何かが変わる場合は、ActionBarSherlockを使用しています。

4

1 に答える 1

102

私はいつも私の答えから1つか2つ離れたGoogle検索のようです。解決策は次のとおりです。

styles.xmlで

<attr name="buttonface_picture" format="reference"/>

次に、実際のテーマで:

<item name="buttonface_picture">@drawable/buttonface_picture_dark</item>

また

<item name="buttonface_picture">@drawable/buttonface_picture_light</item>

次に、menu.xmlで:

<item
    android:id="@+id/menu_attach_existing_picture"
    android:icon="?attr/buttonface_picture"
    android:showAsAction="always"
    android:title="@string/menu_attach_existing_picture">
</item>

このSOと組み合わされたAccessingResourcesページは、最終的に私の頭の中でクリックするようになりました。

于 2012-12-06T02:16:22.690 に答える