Java 如何使用另一个按钮选中/取消选中一个按钮?

Java 如何使用另一个按钮选中/取消选中一个按钮?,java,android,button,state,imagebutton,Java,Android,Button,State,Imagebutton,我正在尝试创建一个图像按钮(Btn1),当我单击另一个按钮(Btn2)时,该按钮的状态将更改为“未选中”。我已经尝试使用布尔值执行此操作,但当布尔值更改时,按钮状态没有更改。我听说过“setChecked”方法,但我找不到如何使用它 提前谢谢你的回答 imageButton_info = (ImageButton)findViewById(R.id.imageButton_info); imageButton_info.setOnClickListener(new View.OnClic

我正在尝试创建一个图像按钮(Btn1),当我单击另一个按钮(Btn2)时,该按钮的状态将更改为“未选中”。我已经尝试使用布尔值执行此操作,但当布尔值更改时,按钮状态没有更改。我听说过“setChecked”方法,但我找不到如何使用它

提前谢谢你的回答

imageButton_info = (ImageButton)findViewById(R.id.imageButton_info);
    imageButton_info.setOnClickListener(new View.OnClickListener(){
        @Override
        public void onClick(View v){...

为什么不使用
RadioButton
而不是
ImageButton
。您可以设计自己的选择器来显示背景,具体取决于是否选中了它。希望能有所帮助。

ImageButton
没有
setChecked(…)
方法。这是一种
ToggleButton
方法,您可以像这样使用
ToggleButton

final ToggleButton button1 = (ToggleButton) findViewById(R.id.button1);
final ToggleButton button2 = (ToggleButton) findViewById(R.id.button2);

button1.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
        @Override
        public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
                button2.setChecked(!b);
        }
});
button2.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
        @Override
        public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
            button1.setChecked(!b);
        }
});

无论如何,
RadioButton
最适合这种情况。

您可以尝试使用以下选项中的一个,而不是ImageButton

  • 单选按钮
  • 开关
  • 复选框