在这种情况下,android-grouping单选按钮

时间:2015-03-14 01:38:06

标签: android android-radiobutton

在我的应用中,我从布局文件夹中扩充了一个视图:

<RelativeLayout
android:layout_width="match_parent"
android:background="#468966"
android:layout_height="40dp">
<RadioButton
    android:id="@+id/radio"
    android:layout_height="40dp"
    android:layout_width="40dp"
    android:layout_alignParentRight="true"
    android:layout_marginRight="10dp"
    android:layout_centerVertical="true" />

<TextView
    android:id="@+id/optionText"
    android:layout_height="40dp"
    android:layout_width="wrap_content"
    android:layout_centerVertical="true"
    android:textSize="16dp"
    android:textColor="#002F2F"
    android:gravity="center_vertical"
    android:layout_toLeftOf="@id/radio"
    android:layout_marginRight="10dp" />
  </RelativeLayout>

并将其动态添加到线性布局。现在,我如何将这些视图的单选按钮分组,以便一次只能选择其中一个?

1 个答案:

答案 0 :(得分:1)

首先,您需要在XML文件中使用RadioGroup控件。

<RadioGroup 
android:id="@+id/radiogroup"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_centerHorizontal="true"
 android:layout_centerVertical="true" 
android:orientation="vertical" />

然后你可以用这种方式动态添加

RadioGroup rgp= (RadioGroup) findViewById(R.id.radiogroup);
 RadioGroup.LayoutParams rprms;
 for(int i=0;i<3;i++){
 RadioButton radioButton = new RadioButton(this);
 radioButton.setText("new"+i); radioButton.setId("rbtn"+i); 
rprms= new RadioGroup.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
 rgp.addView(radioButton, rprms); 
}