需求里有 选择框 可以自定义view 实现Checkable
implements Checkable
package android.widget;
public interface Checkable {
void setChecked(boolean var1);
boolean isChecked();
void toggle();
}
public class CheckImageView extends ImageView implements Checkable {
private static final String TAG = "CheckedImageLayout";
private boolean isChecked = false;
private static final int[] CHECKED_STATE_SET = {
android.R.attr.state_checked
};
public CheckImageView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
public CheckImageView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public CheckImageView(Context context) {
super(context);
}
public void setChecked(boolean check){
isChecked = check;
refreshDrawableState();
}
public boolean isChecked(){
return isChecked;
}
public void toggle() {
setChecked(!isChecked);
}
@Override
public int[] onCreateDrawableState(int extraSpace) {
final int[] drawableState = super.onCreateDrawableState(extraSpace + 1);
if (isChecked()) {
mergeDrawableStates(drawableState, CHECKED_STATE_SET);
}
return drawableState;
}
}