如何在android XML中将复选框(复选框)颜色更改为白色

时间:2015-08-05 18:06:55

标签: android xml

有没有办法在Android XML中将复选框(勾选框)颜色更改为白色。 (我需要包含黑色勾号的白色勾选框,正如我在真实设备中的android studio中预览的那样)

这是我的复选框代码

<CheckBox
    android:textSize="15sp"
    android:textColor="#fff"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Save Loging "
    android:id="@+id/checkBox"
    android:layout_below="@id/PasswordeditText"
    android:checked="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:buttonTint="#fff" />

当我添加android:buttonTint="#fff"预览时,会显示我需要的更改,但它不能在真实设备中使用

设计预览

enter image description here

真实设备

enter image description here

是否有android:buttonTint之类的属性可用于实现真实设备的更改。

7 个答案:

答案 0 :(得分:51)

colorAccent设置为您想要的颜色:

<style name="AppTheme" parent="Theme.AppCompat">
    <item name="colorAccent">#fff</item>
</style>

或者,如果您不想更改主题,请创建一个新主题并仅将其应用于复选框:

<style name="WhiteCheck">
    <item name="colorAccent">#fff</item>
</style>
<CheckBox
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:theme="@style/WhiteCheck"/>

答案 1 :(得分:10)

这是tachyonflux答案的变化:

尝试更改buttonTint:

<style name="my_checkbox_style">
    <item name="buttonTint">#fff</item>
</style>

<CheckBox
            android:id="@+id/my_checkbox"
            style="@style/my_checkbox_style"
            android:background="#000" />

答案 2 :(得分:3)

  

我们可以通过在xml

中使用此属性来更改复选框颜色
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:buttonTint="@color/COLOR_WHICH_YOU_WANT" />

答案 3 :(得分:3)

$(document).ready(function () {

    function formatState(state) {
        console.log(state);
        if (!state.id) {
            return state.text;
        }
        var parent = state.element.parentElement;
        var $state = parent.label + "->" + state.text;
        return $state;
    }

    $('.js-example-basic-single').select2({
        data: data,
        maximumSelectionLength: 1,
        templateSelection: formatState
    });
});

答案 4 :(得分:1)

我们可以使用单行代码更改复选框的颜色

android:buttonTint="@color/app_color" //whatever color

答案 5 :(得分:0)

试试这个

<CheckBox
    android:textSize="15sp"
    android:textColor="#fff"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Save Loging "
    android:id="@+id/checkBox"
    android:layout_below="@id/PasswordeditText"
    android:checked="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:button="@android:drawable/checkbox_on_background" />

如果选中CheckBox,则android:button="@android:drawable/checkbox_off_background"

答案 6 :(得分:0)

  1. android:buttonTint =“ @ color / white”这行按钮的颜色 改变

              <CheckBox
                android:id="@+id/checkk"
                android:layout_width="wrap_content"
                android:layout_height="@dimen/_40sdp"
                android:layout_alignParentLeft="true"
                android:background="@color/black"
                android:buttonTint="@color/white"                 
                android:textSize="@dimen/_14sdp" />