Android TableLayout组动态radioButtons

时间:2011-10-23 10:49:15

标签: java android

如何将所有动态创建的radioButtons分组到一个组中?

while (cursor.moveToNext()) {
    TableRow row = new TableRow(this);
     // CheckBox chk = new CheckBox(this);
      RadioButton  radioBtn =  new RadioButton(this);
     // chk.setText(cursor.getString(cursor.getColumnIndex("from_text")));
      radioBtn.setText(cursor.getString(cursor.getColumnIndex("from_text")));
      radioBtn.
      row.addView(radioBtn);
      table.addView(row);
}

XML

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/hello" />

        <TableLayout
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:id="@+id/myTable"/>         
</LinearLayout>

1 个答案:

答案 0 :(得分:0)

要将单选按钮作为一个组处理,必须将它们放入RadioGroup布局中。如果您要将单选按钮放在单独的表格单元格中,那么您必须自己实现组行为。

您可以使用RadioButton.SetOnCheckedChangeListener()注册一个响应已检查事件的侦听器。

您可以查看RadioGroup source code以了解如何使用RadioGroup布局完成此操作。