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

时间:2017-02-17 01:43:41

标签: java android button state imagebutton

我正在尝试创建一个图像按钮(Btn1),当我点击另一个按钮(Btn2)时,它会在“未选中”时更改其状态。我已经尝试使用布尔值但是按钮当布尔值改变时,状态没有改变。我听说过“setChecked”方法,但我找不到如何使用它......

提前感谢您的回答。

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

3 个答案:

答案 0 :(得分:0)

为什么不使用RadioButton代替ImageButton。您可以设计自己的选择器以显示背景取决于是否已选中。希望它有所帮助。

答案 1 :(得分:0)

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最适合这种情况。

答案 2 :(得分:0)

你可以尝试使用以下代替ImageButton。

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