我正在尝试设计一个如下所示的Android布局:
Entity1
option1 for Entity1
option2
...
optionN
Entity2
option1 for Entity2
...
optionN
Entity3
...
要求每个实体只允许一个选项。
我决定使用单选按钮,打算使用RadioGroup来强制执行。我按如下设计实现了上述目标:
<table layout>
<TextView, content = "Entity1"/>
<TextView, content = "option1 for Entity1"/> <RadioButton/>
<TextView, content = "option2"> <RadioButton/>
...
</table layout>
伪代码将是:
RadioGroup raGroup = createEmptyRaGroup()
...
row = new TableRow();
row.add(TextView-entity1);
row.add(TextView-op1ForEntity1);
RadioButtton raBtn = createRadioButton();
raGroup.addView(raBtn);
row.addView(raBtn);
...
我遇到的问题是我无法将单选按钮分组到一个RadioGroup下,因此只选择了一个选项。在运行时,Android抱怨单选按钮必须是该行的直接子节点。如果我首先将单选按钮添加到行,然后首先将单选按钮添加到单选按钮组,则会产生类似的运行时错误。
有人能告诉我如何使用上述设计或其他方式实现RadioGroup效果吗?
谢谢你们。
答案 0 :(得分:2)
为什么不在布局中使用RadioGroup,如下所示:
<RadioGroup
android:id="@+id/RadioGroup01"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<RadioButton
android:text="Choice 1"
android:id="@+id/RadioButton01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<RadioButton
android:text="Choice 2"
android:id="@+id/RadioButton02"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</RadioGroup>