radiogroup,RadioGroup的使用

http://www.itjxue.com  2023-01-14 11:18  来源:未知  点击次数: 

android radiogroup怎么用

RadioButton和RadioGroup的关系:1、RadioButton表示单个圆形单选框,而RadioGroup是可以容纳多个RadioButton的容器2、每个RadioGroup中的RadioButton同时只能有一个被选中3、不同的RadioGroup中的RadioButton互不相干,即如果组A中有一个选中了,组B中依然可以有一个被选中4、大部分场合下,一个RadioGroup中至少有2个RadioButton5、大部分场合下,一个RadioGroup中的RadioButton默认会有一个被选中,并建议您将它放在RadioGroup中的起始位置。

1. ((RadioButton)radioGroup.getChildAt(0)).setChecked(true);我写的0,你可以根据自己的情况来写。2. 布局里面使用android:checkedButton="@+id/radio0"

android的radiogroup为什么选择两个

项目中遇到多个RadioGroup中单选RadioButton ,设置了默认选中第一个 . 然后就 能选中两个RadioButton . . ..

我开始这样给设置默认选中一个的:

for (int j = 0; j newList.get(position).getList().size(); j++) {

RadioButton radioButton = new RadioButton(context);

radioButton.setTextSize(9);

radioButton.setText(newList.get(position).getList().get(j)

.get("dishname").toString());

radioButton.setTag(newList.get(position).getList().get(j)

.get("dishid").toString());

radioGroup.addView(radioButton, j);

if (j==0) {

radioButton.setCheck(true);

}

}

就是中给radioButton设置为选中.. .

网上查找了下类似的情况 如 这篇文章 ,都没有解决我的问题.

最后研究了下 android 官方Api 和部分 RadioGroup的源代码 后发现. 其实很简单

我们不需要设置RadioButton的默认选中, 这样会使RadioButton一直处于选中状态.

我们应该给RadioGroup 设置选中的RadioButton ,也就是说

把 if (j==0) {

radioButton.setCheck(true);

}

更改为

if (j==0) {

radioGroup.check(radioButton.getId());

}

轻松搞定.. 哎呦了个去,官方Api和源码是个好东西啊.

如何通过RadioGroup判断里面的RadioButton是否被选择

radiogroup本身有监听的方法可以直接设置监听,这个监听需要一个回调接口OnCheckedChangeListener,这个接口里面的回调方法给我们返回了两个参数其中int型的参数就是当前你选中的RadioButton的ID

radioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener() {

@Override

public void onCheckedChanged(RadioGroup group, int checkedId) {

//checkId就是当前选中的RadioButton

}

});

(责任编辑:IT教学网)

更多