Android 改变单选按钮RadioButton的颜色

折腾了半天,在写项目的时候,由于Android版本问题导致RadioButton原生的样式有所变化,比如说在Android4.3  单选按钮就是黑色,但是版本高点,或者其他手机(努比亚单选按钮就是红色的),5.0+就变成了浅灰色,很不容易看出来,体验就不好了,现在,就要更改这个单选按钮的颜色了。经过一上午的这搜那搜,这查那查,功夫不负有心人,特此整理出来,如下:

在xml中更改RadioButton的圆圈和圆点的颜色就别指望了,那该怎么办呢,好,进入正题:

step1:在xml中RadioButton下设置属性android:button="@null" //意思就是隐藏了原生态的圈圈按钮

step2:在drawable文件夹下新建xml文件radiobutton_selector.xml 代码如下:

<selector xmlns:android="http://schemas.android.com/apk/res/android" >

    <item android:drawable="@drawable/icon_rb_selector_normal" android:state_window_focused="false"/>

    <item android:drawable="@drawable/icon_rb_selector_checked"
        android:state_focused="false"
        android:state_pressed="true"/>
    <item android:drawable="@drawable/icon_rb_selector_checked"
        android:state_focused="false"
        android:state_checked="true"/>
    <item android:drawable="@drawable/icon_rb_selector_checked"
        android:state_focused="true"
        android:state_checked="false"/>
    <item android:drawable="@drawable/icon_rb_selector_checked"
        android:state_focused="true"
        android:state_checked="true"/>"
selector>
ps: @drawable/icon_rb_selector_normal 和  @drawable/icon_rb_selector_checked 都是在drawable下的一个图片文件 分别是单选按钮未选择时候的图片和已选中时候的图片


step3:然后就是引入第二步写好的文件了,在第一步中的RadioButton的属性中添加 android:drawableLeft="@drawable/radiobutton_seletor"

现在就在radiobutton按钮左边引入了第二步写好的了。

ps:可以随意设置自己喜欢的按钮图片,请记住裁剪图片大小以适应自己的布局。


你可能感兴趣的:(Android,android,自定义,RadioButton,更改图标)