1
我想孩子开关的状态从父开关改变。
壳体1:
简要上父 - >所有子接通
壳体2:父断 - >所有子关闭
壳体3:儿童2关闭(儿童1 & 3 ON) - >父论
问题 当我开/关所有子开关父开关应该开启/相应地关闭。下面
是我在代码壳体1,2 & 3个工作精细代码 。
switchParent.setOnCheckedChangeListener(新 CompoundButton.OnCheckedChangeListener(){
@Override
public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
if (b) {
switchChild1.setChecked(true);
switchChild2.setChecked(true);
switchChild3.setChecked(true);
} else {
switchChild1.setChecked(false);
switchChild2.setChecked(false);
switchChild3.setChecked(false);
}
}
}); switchChild1.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
setState();
}
});
switchChild2.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
setState();
}
});
switchChild3.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
setState();
}
});
的setState()
私人无效的setState(){
if (switchChild1.isChecked() || switchChild2.isChecked() || switchChild3.isChecked()) {
switchParent.setChecked(true);
} else {
switchParent.setChecked(false);
}
}
我会很高兴任何帮助。
我想你的代码,但在所有开关和我尝试关闭任何一个孩子转,那么所有到OFF自动切换状态的变化。 – Aks4125