是否可以更改Android 微调框小部件中radio button
的颜色。默认情况下,它会显示单选按钮的绿色。
我需要将其更改为其他颜色,是否可能,以及如何?
答案 0 :(得分:12)
我知道现在这是一个老问题,但是这里......
您需要创建一个自定义主题并使用您的微调器将其应用于活动。
首先,您需要为“新”广播的已选中/未选中状态创建图像,您只需从sdk的btn_radio_on.png
文件夹中提取给定图像btn_radio_off.png
和res/drawable-*
(S)。编辑它们以查看您想要的内容(例如更改颜色或其他内容)并保存到项目中。
接下来,在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
的{{1}}中创建另一个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>
应用于您的活动并运行!
我发现的一个很好的资源是Applying Styles and Themes,尤其是Android Styles (styles.xml)和Android Themes (themes.xml)上的其他参考