CheckBox继承于CompoundButton,是TextView、Button的子孙类,其有两种状态(选中或不选中)。
1.常用的属性和方法
2.状态变化监听
CheckBox通过绑定OnCheckedChangeListener来监听选中/不选中状态变化。
3.设置不同状态的显示
我们可以通过设置CheckBox的android:button属性对应的selector来达到不同状态下的显示。
首先,我们定义一个selector文件,将其命名为myCheckBox.xml,并放在res/drawable目录下,XML内容如下:
然后,将android:button属性指向selector文件,即“@drawable/myCheckBox”。
1.常用的属性和方法
常用属性:
isChecked() | 判断是否被选中,返回true或者false |
performClick() | 调用OnClickListener监听器,即相当于模拟一次单击事件 |
setChecked(boolean) | 通过传入的布尔参数设置空间选中状态 |
toggle() | 置放控件当前的状态 |
setOnCheckedChangeListener | 为控件设置OnCheckedChangeListener监听器 |
2.状态变化监听
CheckBox通过绑定OnCheckedChangeListener来监听选中/不选中状态变化。
checkBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener(){
public void onCheckedChanged(CompoundButton view,boolean isChecked){
if(isChecked){
//code here - CheckBox被选中
}else{
//code here - CheckBox取消选中
}
}
}
3.设置不同状态的显示
我们可以通过设置CheckBox的android:button属性对应的selector来达到不同状态下的显示。
首先,我们定义一个selector文件,将其命名为myCheckBox.xml,并放在res/drawable目录下,XML内容如下:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="false" android:state_enabled="true" android:drawable="@drawable/checkbox_off" />
<item android:state_checked="true" android:state_enabled="true" android:drawable="@drawable/checkbox_on" />
</selector>
然后,将android:button属性指向selector文件,即“@drawable/myCheckBox”。