android 中如何获取radiogroup 中那个radiobutton被选择

XML文件中添加了RadioGroup,然后想在代码中,动态添加RadioButton,该怎样实现?<LinearLayoutandroid:id="@+id/child... XML文件中添加了RadioGroup,然后想在代码中,动态添加RadioButton,该怎样实现? <LinearLayout android:id="@+id/childlayout"

android:layout_width="fill_parent" android:layout_height="fill_parent"

android:orientation="vertical">

<RadioGroup android:id="@+id/radioGroup1"

android:layout_height="wrap_content"

android:layout_width="fill_parent"

android:orientation="vertical">

</RadioGroup>

</LinearLayout>
复制代码现在,我想用代码动态添加RadioButton,代码是不是应该这样写
RadioButton rb= new RadioButton(this);

RadioGroup radiogroup=(RadioGroup)this.findViewById(R.id.radioGroup1);

radiogroup.addView(rb);
复制代码
但是,我写了好像报错的
展开
 我来答
火七暴十唯零23
2011-09-12 · TA获得超过1.3万个赞
知道大有可为答主
回答量:1.6万
采纳率:0%
帮助的人:4753万
展开全部
两个RadioButton要写在同一个组RadioGroup下面这样就可以了...xml文件如下:
<RadioGroup android:id="@+id/rg_sex" android:layout_width="fill_parent"
android:orientation="horizontal" android:layout_height="wrap_content">
<RadioButton android:layout_width="wrap_content"
android:text="@string/person_man" android:id="@id/+rb_person_man"
android:layout_height="wrap_content" android:checked="true" />
<RadioButton android:layout_width="wrap_content"
android:text="@string/person_woman" android:id="@id/+rb_person_woman"
android:layout_height="wrap_content" />
</RadioGroup>
java代码如下:
private RadioGroup rg_sex ;
...
rg_sex = (RadioGroup)findViewById(R.id.rg_sex);
rg_sex.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
switch (checkedId) {
case R.id.rb_person_man:
System.out.println("男");
break;
case R.id.rb_person_woman:
System.out.println("女");
break ;
default:
break;
}
}
});
9月
Honey_ToBeNo_1
2011-09-12 · TA获得超过499个赞
知道小有建树答主
回答量:269
采纳率:75%
帮助的人:150万
展开全部
这儿是我写的一小段代码,要想知道radiogroup 中那个radiobutton被选择,需要设置监听:

RadioGroup radiogroup = (RadioGroup) this.findViewById(R.id.radioGroup);
RadioButton rb = new RadioButton(this);
rb.setId(0);
RadioButton rb1 = new RadioButton(this);
rb.setId(1);
RadioButton rb2 = new RadioButton(this);
rb.setId(2);
RadioButton rb3 = new RadioButton(this);
rb.setId(3);

radiogroup.addView(rb);
radiogroup.addView(rb1);
radiogroup.addView(rb2);
radiogroup.addView(rb3);

radiogroup.setOnCheckedChangeListener(new OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
Toast.makeText(RadiaoGroupTester.this,
"The ID is: " + checkedId, Toast.LENGTH_LONG).show();
}
});
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wangrengpeng
2011-09-11 · TA获得超过124个赞
知道小有建树答主
回答量:319
采纳率:0%
帮助的人:226万
展开全部
看文档,找单独属于RadioGroup对象的方法、而不是继承下来的方法,这个问题挺简单的。建议自己弄清楚、学会看文档。
http://zhidao.baidu.com/question/199039524.html 看看这个,我比较懒。。没试过。
追问
行,那我再看看API,如果还有问题再请教你,你的QQ多少啊
追答
124863950
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式