Android RadioGroup的RadioButton 选择改变字体颜色和背景颜色

RadioGroup

    <RadioGroup
            android:id="@+id/client_charge_radiogroup"
            android:layout_width="200dp"
            android:layout_height="40dp"
            android:layout_marginLeft="5dp"
            android:layout_alignParentRight="true"
            android:fadingEdge="none"
            android:gravity="center_vertical"
            android:layout_centerVertical="true"
            android:orientation="horizontal" 
            >
        
            <RadioButton
                android:id="@+id/client_radio_label"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:button="@color/transparent"
                android:gravity="center"
                android:text="Client"
                android:textColor="@color/color_radiobutton"
                android:background="@drawable/radio_group_selector" 
                />
        
            <RadioButton
                android:id="@+id/firm_radio_label"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:button="@color/transparent"
                android:gravity="center"
                android:text="Firm" 
                android:checked="true"
                android:textColor="@color/color_radiobutton"
                android:background="@drawable/radio_group_selector"/>
        </RadioGroup>

radiobutton字体颜色改变color_radiobutton.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_checked="true" android:color="@color/color_text_selected"/>  
    <!-- not selected -->  
    <item android:state_checked="false" android:color="@color/color_text_normal"/>  
</selector>

radiobutton背景颜色改变radio_group_selector.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
    <item android:state_checked="true" android:drawable="@color/color_bg_selected" ></item>
    <item android:state_checked="false" android:drawable="@color/color_bg_normal"></item>
</selector>

color.xml

    <color name="transparent">#000000</color>
    <color name="color_bg_selected">#e0301e</color>
    <color name="color_bg_normal">#e7e7e8</color>
    <color name="color_text_selected">#ffffff</color>
    <color name="color_text_normal">#000000</color>

Activity

        clientRadioGroup = (RadioGroup) findViewById(R.id.client_charge_radiogroup);
        clientRadioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener() {
            
            @Override
            public void onCheckedChanged(RadioGroup group, int checkedId) {
                int radioButtonId = group.getCheckedRadioButtonId();
                RadioButton rb = (RadioButton)findViewById(radioButtonId);
                String radioButtonLabel = rb.getText().toString();
            }
        });

 

posted @ 2016-11-05 22:38  星辰之力  阅读(15419)  评论(0编辑  收藏  举报