Changing radio button and checkbox color and appearance

Updated 18 November 2017

Save
In this blog, we will learn about Changing radio button and checkbox color and appearance in your android application.

The radio button and checkbox button all take the default accent color for selection from your application. Changing the layout to something that you want is not that simple, but is very easy if you follow through correctly.

After reading this blog, you can change the default colors of all your radio button and checkbox( whether created through XML or through java code).

APPROACH

For changing the colors of selected/ checked button state to some color of your choice, all you need to do is to create a drawable with correct state mapped to colors of your choice and a default color and set it in your styles.xml file.

CODE :

my_compound_button_color_selector.xml

styles.xml

 

And all your Radio Button and Checkbox colors will be changed from this settings.

Now, let’s see how we can change the appearance, what I needed was the button on the right side of the text and doing this was pretty easy.

APPROACH :

Your compound button should have layout params of (width: match_parent and height: wrap_content). now you need to reverse the layout direction from the parent layout direction. I needed this in my dynamic views created at runtime from java files, so I am sharing the snippet from Java code, but you can execute the same from your xmls too.

CODE :

And with this code, you can change the appearance of your compound buttons(Radio Button and Checkbox).

After following this blog, the appearance of your compound buttons will be like this from this code.

 

 

author
. . .

Leave a Comment

Your email address will not be published. Required fields are marked*


11 comments

  • Salman
    • anchit (Moderator)
  • Rafael Baptista
    • anchit (Moderator)
  • Waseem
    • anchit (Moderator)
  • Tomek
    • anchit (Moderator)
  • Umesh Kumar
    • anchit (Moderator)
  • prajwal
  • Start a Project


      Message Sent!

      If you have more details or questions, you can reply to the received confirmation email.

      Back to Home