8

radio buttonAndroidスピナー ウィジェットの色を変更することは可能ですか。デフォルトでは、ラジオ ボタンは緑色で表示されます。

他の色に変更する必要がありますが、可能ですか?どうすればよいですか?

4

1 に答える 1

12

これは今では古い質問であることは知っていますが、ここに行きます...

カスタム テーマを作成し、それをスピナーでアクティビティに適用する必要があります。

最初に、「新しい」ラジオのチェック済み/未チェック状態のイメージを作成する必要があります。指定されたイメージbtn_radio_on.pngbtn_radio_off.pngSDK のres/drawable-*フォルダーからプルするだけです。それらを編集して(色の変更など)、プロジェクトに保存します。

res/values次に、フォルダーに新しい xml ファイルを作成し、以下を追加します。

<resources>
    <style name="CustomSpinnerRadioTheme" parent="@android:style/Theme">
        <item name="android:spinnerDropDownItemStyle">@style/EditedRadio</item>
    </style>

    <style name="EditedRadio" parent="@android:style/Widget.DropDownItem.Spinner">
        <item name="android:checkMark">@drawable/edited_radio</item>
    </style>
</resources>

res/drawable次に、 namedに別の xml ファイルを作成しedited_radio.xml、次の内容を含める必要があります。

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_checked="false" android:drawable="@drawable/btn_radio_off" />
    <item android:state_checked="true" android:drawable="@drawable/btn_radio_on" />
</selector>

チェックされた状態については、編集した画像を必ず参照してください。次に、CustomSpinnerRadioThemeをアクティビティに適用して実行するだけです!

私が見つけた良いリソースはApplying Styles and Themesで、特にAndroid Styles (styles.xml)Android Themes (themes.xml)に関する追加のリファレンスです。

于 2011-01-11T21:38:27.953 に答える