【问题标题】:Android checkbox state based background color? [duplicate]基于Android复选框状态的背景颜色? [复制]
【发布时间】:2016-01-11 11:03:34
【问题描述】:

首先,我在 Android 开发者网站上找不到复选框的样式 API 文档。我想对复选框进行以下更改。目前我的复选框在选中时显示为:

我想将白色复选标记后面的颜色更改为其他颜色,例如:

是否有任何样式功能或属性来实现这一点?

【问题讨论】:

  • 接受 rami 评论。它会起作用的。 colorAcent 是样式中的属性,它为复选框提供选定的颜色。
  • 这个问题你解决了吗?

标签: android android-styles android-checkbox


【解决方案1】:
       android:buttonTint="@color/CHECK_COLOR"
       (OR)
       android:button="@drawable/your_check_drawable"

【讨论】:

    【解决方案2】:

    以编程方式尝试这样的操作

    boolean checked =false;
    
    checkbox.setOnClickListener(new OnClickListener() {
    
    @Override
    public void onClick(View arg0) {
        if(checked){
            GradientDrawable d=new GradientDrawable();
            d.setColor(Color.BLUE);
            checkbox.setBackgroundDrawable(d);
            }
        else{
            GradientDrawable d=new GradientDrawable();
            d.setColor(Color.RED);
            checkbox.setBackgroundDrawable(d);
        }
        checked = !checked
        }
    
    });
    

    您将可以访问 GradientDrawable 类的许多属性来样式化您的背景。你可以在Documentation看到更多信息

    【讨论】:

      【解决方案3】:

      Material 主题中会自动根据主题的原色进行管理。或者您可以在自定义视图的帮助下根据您的需要进行管理。

      【讨论】:

        猜你喜欢
        • 2012-10-05
        • 2011-11-02
        • 1970-01-01
        • 2019-10-16
        • 1970-01-01
        • 1970-01-01
        • 2013-11-29
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多