我正在使用RadioGroup
,将RadioButton rdbut
添加到RadioGroup rdgrp
,例如rdgrp.addView(rdbut)
。
for(int j=0;j<3;j++)
{
RadioGroup rdgrp = new RadioGroup;
for(int i=0;i<=10;i++)
{
RadioButton rdbut = new RadioButton(this);
rdbut.setText("RadioButtion"+i);
rdbut.setId(i);
rdbut.setTag("somename");
rdgrp.addView(rdbut);
}
}
上面的代码显示了我如何初始化radiogroup和单选按钮。在我运行此代码后,在模拟器/移动设备中,我可以一次检查2个单选按钮。
可能是什么问题?
答案 0 :(得分:1)
像这样更改您的代码。
RadioGroup rdgrp[] = new RadioGroup[3];
For(int j=0;j<3;j++)
{
RadioButton rdbut[] = new RadioButton[10];
For(int i=0;i<=10;i++)
{
rdbut[i].setText("RadioButtion"+i);
rdbut[i].setId(j*100+i);
rdbut[i].setTag("somename");
rdgrp[j].addView(rdbut[i]);
}
}
答案 1 :(得分:0)
您已创建三个不同的广播组。 您只能从一个组中选择一个单选按钮。因此,您可以从三个组中选择三个按钮但是没有组间关系。您可以同时从不同的组中选择单选按钮。在您的情况下,您可以选择最多三个按钮
由于 苏尼
答案 2 :(得分:0)
在用户布局文件中使用像xml设计这样的东西。
<TableLayout
android:id="@+id/tbl_layoutchoice"
style="@style/InfoTableView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="3dip" >
<RadioGroup
android:id="@+id/SelectLayout_Group"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
</RadioGroup>
</TableLayout>
和For在Activity的OnCreate()方法中使用此RadioGroup,并像这样使用findView
mRadioGroup = (RadioGroup) this.findViewById(R.id.SelectLayout_Group);
然后使用以下代码,您需要更改以在一个RadioGroup中添加单选按钮。使用下面还要求动态创建单选按钮的声明。
ArrayList<String> layoutlist = new ArrayList<String>(3);
int index = -1;
LayoutParams lp = new LayoutParams(LayoutParams.FILL_PARENT,
LayoutParams.WRAP_CONTENT);
for (String layout : layoutlist) {
RadioButton r = new RadioButton(this);
index++;
r.setText(layout);
r.setId(index);
r.setLayoutParams(lp);
r.setTextAppearance(this, R.style.TextBase);
mRadioGroup.addView(r);
}
所以不要忘记在for循环之前在layoutlist中添加你的字符串值。而R.style是RadioButton中文本显示需要的样式。