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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android radiobutton点击后一直是选中状态,怎么再点击后取消选中相关的知识,希望对你有一定的参考价值。

设置一个全局变量为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控件可以有多个,但同时有且仅有一个可以被选中。

代码如下:

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical" >

<TextView

android:layout_width="wrap_content"

android:layout_height="wrap_content"

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

<RadioGroup

android:id="@+id/rg_sex"

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:orientation="horizontal" >

<RadioButton

android:id="@+id/rb_Male"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="男" />

<RadioButton

android:id="@+id/rb_FeMale"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="女" />

</RadioGroup>

</LinearLayout>

参考资料:

百度百科:RadioButton

参考技术A

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(isCheckif(v==rb_bug)rb_bug.setChecked(false);

elseif(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

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

改变它的状态,方式有三种:
1、XML中申明 android:check="true|false"
2、代码动态改变 checkBox.setChecked(true|false);
3、用户触摸 这个由android系统自动改变
参考技术C 在对这个radiobutton进行点击事件监听,
监听处理方法中写入 radiobutton(单选框名字).setChecked(false);就可以了追问

一定要在代码方面才能实现这个吗
在xml布局文件中不能实现这个功能?

追答

不行的,radiobutton的属性就是单选一个,点击选中之后是有且只有一个。
你可以选择checkbox。这样的话点击还能够取消掉

本回答被提问者采纳
参考技术D 必须在代码里实现对radiobutton点击事件的监听。xml里面只是一个默认值

Android中的checkbox和RadioButton的区别

1、单个RadioButton在选中后,通过点击无法变为未选中 
      单个CheckBox在选中后,通过点击可以变为未选中

2、一组RadioButton,只能同时选中一个
      一组CheckBox,能同时选中多个

3、RadioButton在大部分UI框架中默认都以圆形表示
      CheckBox在大部分UI框架中默认都以矩形表示

以上是关于android radiobutton点击后一直是选中状态,怎么再点击后取消选中的主要内容,如果未能解决你的问题,请参考以下文章

android中的radiobutton要点击2下才能选中

android radiobutton 消除灰色阴影

android中RadioButton的setChecked(true)无效或点击状态无反应问题

android中RadioButton的setChecked(true)无效或点击状态无反应问题

请问在android的listView中怎么动态加入radioButton和Button按钮?

Android:如何更改 RadioButton 的大小