如何以编程方式更改我的复选框的文本和框颜色?

时间:2015-02-22 22:29:05

标签: java javascript android checkbox

我使用多个计算系统构建一个应用程序,它需要填充所有内容以获得结果,因此如果用户在没有选择的情况下离开checkbox,我将通过制作{的文本和框来通知他{1}}更改为“红色” 喜欢链接中的图片:

https://s15.postimg.org/kej9uc457/checkbox.jpg

如果我们假设我的复选框为“是”,那么如何为此制作代码,另一个又将其重新运行回原来的那个?


我可以制作一个这样的自定义xml文件:

checkbox

我知道如何制定检查条件:

<?xml version="1.0" encoding="utf-8"?>
<item android:drawable="@drawable/option_unselected" android:state_checked="false" android:color="#ff0000"/>
<item android:drawable="@drawable/option_selected"   android:state_checked="true"/>

但在这种情况下我需要两个事情:

1-复选框图像就像Android上的默认图像一样,然后将其设为“红色”框

2-我需要一个代码,使其返回默认的黑色文本和框

,,那我怎么能这样做?或者如果有人为我的问题找到另一个解决方案?

1 个答案:

答案 0 :(得分:0)

可以创建另一组名为custom_red_checkbox.xml的xml

<?xml version="1.0" encoding="utf-8"?>
<item android:drawable="@drawable/option_unselected_red" android:state_checked="false" android:color="#ff0000"/>
<item android:drawable="@drawable/option_selected"   android:state_checked="true"/>

并且您的代码修改为

if(yes.isChecked())
        {check.setButtonDrawable(mContext.getResources().getDrawable(
                R.drawable.custom_checkbox));}
else
        {check.setButtonDrawable(mContext.getResources().getDrawable(
                R.drawable.custom_red_checkbox));}