【问题标题】:Change checked radio button color [duplicate]更改选中的单选按钮颜色[重复]
【发布时间】:2018-01-24 20:03:29
【问题描述】:
我想更改选中的RadioButton 颜色。但我不知道如何改变它。下面有一些代码和图片表示。
<RadioButton
android:id="@+id/type_cambodia"
android:layout_width="match_parent"
android:layout_height="30dp"
android:button="@null"
android:drawablePadding="20dp"
android:layout_marginTop="@dimen/app_margin"
android:drawableRight="@android:drawable/btn_radio"
android:text="@string/type_goal_khmer_kh"/>
【问题讨论】:
标签:
android
xml
android-styles
android-studio-2.3
【解决方案1】:
您可以设计自己的自定义可绘制对象。
<style name="MyRadioButtonStyle" parent="@android:style/Widget.CompoundButton.RadioButton">
<item name="android:button">@drawable/custom_btn_radio</item>
</style>
custom_drawable_for_radio_button.xml
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true" android:state_window_focused="false"
android:drawable="@drawable/btn_radio_on" />
<item android:state_checked="false" android:state_window_focused="false"
android:drawable="@drawable/btn_radio_off" />
<item android:state_checked="true" android:state_pressed="true"
android:drawable="@drawable/btn_radio_on_pressed" />
<item android:state_checked="false" android:state_pressed="true"
android:drawable="@drawable/btn_radio_off_pressed" />
<item android:state_checked="true" android:state_focused="true"
android:drawable="@drawable/btn_radio_on_selected" />
<item android:state_checked="false" android:state_focused="true"
android:drawable="@drawable/btn_radio_off_selected" />
<item android:state_checked="false" android:drawable="@drawable/btn_radio_off" />
<item android:state_checked="true" android:drawable="@drawable/btn_radio_on" />
</selector>
在选择器项目中,您可以指定一个具有不同颜色的自定义“ON”可绘制对象。然后为您使用此自定义可绘制单选按钮而不是默认单选按钮。
RadioButton - how to use a custom drawable?