Search code examples
androidcheckboxandroid-checkbox

Set background color of unchecked checkbox Android


It has to be like this:

enter image description here

Currently it looks like this:

enter image description here

The rounded rectangle is not that important. But the unchecked state has to be black. This is my code:

<CheckBox
    android:id="@+id/checkbox"
    android:buttonTint="@color/orange"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"/>

This is the theme I'm using:

  "Theme.AppCompat.Light.NoActionBar"

I've tried this as well:

<style name="checkbox_style" parent="Bijenkorf">
    <item name="material_grey_600">@color/black</item>
</style>

Because the default unchecked has the color #757575. And I looked this up in the Theme and it was "material_grey_600". But this doesn't compile. Any ideas?


Solution

  • Do it like this-

    In your layout file-

    <android.support.v7.widget.AppCompatCheckBox
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                app:theme="@style/CheckboxStyle"/>
    

    and in your style.xml file

    <style name="CheckboxStyle" parent="AppTheme">
        <item name="colorAccent">@color/colorAccent</item>
    </style>
    

    Or you can change both the checked and unchecked color like this-

    <style name="CheckboxStyle" parent="AppTheme">
        <item name="colorAccent">@color/colorAccent</item>  // for checked 
        <item name="android:textColorSecondary">@color/colorSecondary</item>  // for unchecked
    </style>
    

    change colorAccent and colorSecondary with your required colors.

    hope it will help you..