如何设置文本右侧的单选按钮的样式

how to style radio button that is on the right hand side of text

我有一个包含三个单选按钮的单选组 我使用以下命令将文本放在单选按钮的左侧

android:drawableRight="@drawable/abc_btn_radio_material"

但是按钮的默认颜色是黑色,我无法使用 android:theme 命令更改它的颜色,有人知道如何更改默认颜色吗? 我的完整无线电组代码:

<RadioGroup
    android:id="@+id/main_loading_radioGroup"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:layout_marginRight="6dp"
    android:layout_marginTop="6dp"
    android:checkedButton="@+id/main_wall_load"
    android:orientation="vertical">



    <RadioButton
        android:id="@+id/main_wall_load"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:button="@null"
        android:drawableRight="@drawable/abc_btn_radio_material"
        android:theme="@style/MyRadioButton"
        android:layout_gravity="right"
         android:text="A"
        android:textColor="#000000"
        android:textSize="12sp"/>

    <RadioButton
        android:id="@+id/main_roof_load"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:button="@null"
        android:layout_gravity="right"
        android:drawableRight="@drawable/abc_btn_radio_material"
        android:text="AA"
        android:textSize="12sp"/>

    <RadioButton
        android:id="@+id/main_stairCase_load"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:button="@null"
        android:layout_gravity="right"
        android:drawableRight="@drawable/abc_btn_radio_material"
        android:text="AAA"
        android:textColor="#000000"
        android:textSize="12sp"/>
</RadioGroup>

试试这个代码,

在您的 res/drawable

中制作此文件

radiobutton_drawable.xml

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

activity_main.xml:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingTop="@dimen/activity_vertical_margin">

    <RadioGroup xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/main_loading_radioGroup"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="10dp"
        android:orientation="vertical">

        <RadioButton
            android:id="@+id/main_wall_load"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:button="@android:color/transparent"
            android:checked="true"
            android:drawablePadding="30dp"
            android:drawableRight="@drawable/radiobutton_drawable"
            android:text="A"
            android:textColor="#000000"
            android:textSize="12sp" />

        <RadioButton
            android:id="@+id/main_roof_load"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:button="@android:color/transparent"
            android:drawablePadding="24dp"
            android:drawableRight="@drawable/radiobutton_drawable"
            android:text="AA"
            android:textSize="12sp" />

        <RadioButton
            android:id="@+id/main_stairCase_load"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:button="@android:color/transparent"
            android:drawablePadding="18dp"
            android:drawableRight="@drawable/radiobutton_drawable"
            android:text="AAA"
            android:textColor="#000000"
            android:textSize="12sp" />
    </RadioGroup>
</RelativeLayout>

这些是我用于单选按钮选中和未选中状态的可绘制对象,

特此附上截图,

希望对您有所帮助!!!