android radiobutton点击后一直是选中状态,怎么再点击后取消选中

2024-12-25 09:24:31
推荐回答(5个)
回答1:

设置一个全局变量为RadioButton的状态,设置RadioButton点击监听事件,监听你是否点击按钮,如果按钮是点击状态,那再次点击后就会取消选中。

代码如下:
final RadioButton rb_bug = (RadioButton) view.findViewById(R.id.rb_buy);
final GlobalValue globalValue = new GlobalValue();
rb_bug.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
boolean isCheck = globalValue.isCheck();
if(isCheck)
{
if(v==rb_bug)rb_bug.setChecked(false);
}
else
{
if(v==rb_bug)rb_bug.setChecked(true);
}
globalValue.setCheck(!isCheck);
}
});
public class GlobalValue {
public boolean isCheck() {
return isCheck;
}
public void setCheck(boolean check) {
isCheck = check;
}
private boolean isCheck;
}

扩展资料:

RadioButton使用步骤

1、RadioButton是圆形单选框

2、RadioGroup是个可以容纳多个RadioButton的容器。

3、在RadioGroup中的RadioButton控件可以有多个,但同时有且仅有一个可以被选中。

代码如下:

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical" >

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="请选择性别" />

android:id="@+id/rg_sex"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:orientation="horizontal" >

android:id="@+id/rb_Male"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="男" />

android:id="@+id/rb_FeMale"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="女" />

参考资料:

百度百科:RadioButton

回答2:

Radiobutton既单选框,多个单选框中必须有一个是选中的,如果你想选择之后又取消,那么要使用CheckBox来实现改变它的状态,方式有三种:

1、XML中申明 android:check="true|false"

2、代码动态改变 checkBox.setChecked(true|false)

3、用户触摸 这个由android系统自动改变

RadioButton使用步骤:

1、RadioButton是圆形单选框

2、RadioGroup是个可以容纳多个RadioButton的容器。

3、在RadioGroup中的RadioButton控件可以有多个,但同时有且仅有一个可以被选中。

代码如下:

final RadioButton rb_bug = (RadioButton) view.findViewById(R.id.rb_buy);

final GlobalValue globalValue = new GlobalValue();

rb_bug.setOnClickListener(new View.OnClickListener() 

{@Overridepublic void onClick(View v) {boolean isCheck = globalValue.isCheck();

if(isCheck{if(v==rb_bug)rb_bug.setChecked(false);}

else{if(v==rb_bug)rb_bug.setChecked(true);}globalValue.setCheck(!isCheck);}});

public class GlobalValue {public boolean isCheck() {return isCheck;}public void setCheck(boolean check)

{isCheck = check;}private boolean isCheck;}

参考资料:百度百科:RadioButton

回答3:

Radiobutton既单选框,多个单选框中必须有一个是选中的
如果你想选择之后又取消,那么要使用CheckBox来实现

改变它的状态,方式有三种:
1、XML中申明 android:check="true|false"
2、代码动态改变 checkBox.setChecked(true|false);
3、用户触摸 这个由android系统自动改变

回答4:

在对这个radiobutton进行点击事件监听,
监听处理方法中写入 radiobutton(单选框名字).setChecked(false);就可以了

回答5:

必须在代码里实现对radiobutton点击事件的监听。xml里面只是一个默认值