b4[0].setOnCheckedChangeListener(newCompoundButton.OnCheckedChangeListener() {
@Overridepublic void onCheckedChanged(CompoundButton buttonView, booleanisChecked) {if(isChecked) {for(int i = 0; i < 5; i++) {if(i != 0) {if(b4[i].isChecked()) b4[i].setChecked(false);
}
}
}
}
});
b4[1].setOnCheckedChangeListener(newCompoundButton.OnCheckedChangeListener() {
@Overridepublic void onCheckedChanged(CompoundButton buttonView, booleanisChecked) {if(isChecked) {for(int i = 0; i < 5; i++) {if(i != 1) {if(b4[i].isChecked()) b4[i].setChecked(false);
}
}
}
}
});/*b1[1].setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
for(int i = 0; i < 5; i++) {
if (i != 1)
b1[i].setChecked(false);
}
if (!b1[1].isPressed())
b1[1].setChecked(true);
}
});*/b4[2].setOnCheckedChangeListener(newCompoundButton.OnCheckedChangeListener() {
@Overridepublic void onCheckedChanged(CompoundButton buttonView, booleanisChecked) {if(isChecked) {for(int i = 0; i < 5; i++) {if(i != 2) {if(b4[i].isChecked()) b4[i].setChecked(false);
}
}
}
}
});
b4[3].setOnCheckedChangeListener(newCompoundButton.OnCheckedChangeListener() {
@Overridepublic void onCheckedChanged(CompoundButton buttonView, booleanisChecked) {if(isChecked) {for(int i = 0; i < 5; i++) {if(i != 3) {if(b4[i].isChecked()) b4[i].setChecked(false);
}
}
}
}
});
b4[4].setOnCheckedChangeListener(newCompoundButton.OnCheckedChangeListener() {
@Overridepublic void onCheckedChanged(CompoundButton buttonView, booleanisChecked) {if(isChecked) {for(int i = 0; i < 5; i++) {if(i != 4) {if(b4[i].isChecked()) b4[i].setChecked(false);
}
}
}
}
});
博客展示了在Android中实现互斥按钮的代码。通过为多个按钮设置OnCheckedChangeListener监听器,当某个按钮被选中时,遍历其他按钮并将其选中状态设为false,以此实现互斥效果。
546

被折叠的 条评论
为什么被折叠?



