您的位置:首页 > 移动开发 > Android开发

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

2016-11-05 22:38 686 查看
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();
}
});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: