@Override
public void setChecked(boolean checked) {
CheckBox checkb = (CheckBox) findViewById(R.id.a);
if (checkb.isChecked() != checked) {
checkb.setChecked(checked) ;
}
}
@Override
public boolean isChecked() {
CheckBox checkb = (CheckBox) findViewById(R.id.a);
return checkb.isChecked() ;
}
@Override
public void toggle() {
CheckBox checkb = (CheckBox) findViewById(R.id.a);
setChecked(checkb.isChecked() ? false : true) ;
}
这就是一个类的定义方式。如果我想在其他复选框中使用它们,如何修改这些功能?例如,您可以在findViewByld(R.id.b)上使用;
你有两个选择:
CheckBox
对象(通过继承重用方法)CheckBoxHelper
(通过委托重用方法)我建议采用第二种方法:
class CheckBoxHelper {
public void setChecked(CheckBox c, boolean checked) {
if (c.isChecked() != checked) {
c.setChecked(checked) ;
}
}
.. etc
}