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

Posted 星辰

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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();
            }
        });

 

以上是关于Android RadioGroup的RadioButton 选择改变字体颜色和背景颜色的主要内容,如果未能解决你的问题,请参考以下文章

android开发中 关于radiogroup

android的radiogroup为啥选择两个

android如何实现代码控制RadioGroup中某一个按钮选中

android如何实现代码控制RadioGroup中某一个按钮选中

Android RadioGroup和RadioButton详解

Android RadioGroup getCheckedRadioButtonId()