在Android中,CompoundButton是一个复合按钮的基类,它可以同时显示文本和图像,并且可以切换状态(选中/未选中)。CompoundButton有三个主要的子类:CheckBox、RadioButton和Switch。
下面是一些使用CompoundButton的示例:
- 使用CheckBox:
在代码中获取CheckBox的引用,并监听其状态变化:
CheckBox checkBox = findViewById(R.id.checkBox); checkBox.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { // 处理状态变化事件 if (isChecked) { // 复选框被选中 } else { // 复选框未选中 } } });
- 使用RadioButton(单选按钮):
在代码中获取RadioGroup的引用,并监听选中的RadioButton:
RadioGroup radioGroup = findViewById(R.id.radioGroup); radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup group, int checkedId) { // 处理选中的RadioButton变化事件 if (checkedId == R.id.radioButton1) { // Option 1被选中 } else if (checkedId == R.id.radioButton2) { // Option 2被选中 } } });
- 使用Switch(开关按钮):
在代码中获取Switch的引用,并监听其状态变化:
Switch switchButton = findViewById(R.id.switchButton); switchButton.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { // 处理状态变化事件 if (isChecked) { // Switch被打开 } else { // Switch被关闭 } } });
以上是CompoundButton的基本用法,你可以根据自己的需求对其进行进一步的定制和扩展。