当控件同时持有两种状态,比如一个CheckBox在android:state_enabled=true的时候可以有android:state_checked=true和android:state_checked=false两种状态
- 我们可以这么做
//首先在selector文件里定义好控件的各种状态
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/bet_confirm_stop_chase_checked" android:state_checked="true" android:state_enabled="true" />
<item android:drawable="@drawable/check_box_cancel" android:state_checked="false" android:state_enabled="true" />
<item android:drawable="@drawable/bet_confirm_have_bean_read" android:state_enabled="false" />
<item android:drawable="@drawable/bet_confirm_stop_chase_checked" android:state_enabled="true" />
</selector>
- 代码调用的时候
//这两句代码执行效果和<item android:drawable="@drawable/bet_confirm_stop_chase_checked" android:state_checked="true" android:state_enabled="true" />效果是一样的
stopChaseCheckbox.setChecked(true);
stopChaseCheckbox.setEnabled(true);