是否可以在Android中将单选按钮更改为复选框?

时间:2016-12-15 18:17:48

标签: android radio-button android-checkbox

设计一个包含10个问题的测验。前5个问题将有单选按钮作为选项,接下来的5个将是复选框。

<TextView
    android:id="@+id/questiontext"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />

<LinearLayout
    android:id="@+id/linear"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content">

    <RadioGroup
        android:id="@+id/radiogroup"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">

        <RadioButton
            android:id="@+id/opt1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

        <RadioButton
            android:id="@+id/opt2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

        <RadioButton
            android:id="@+id/opt3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

        <RadioButton
            android:id="@+id/opt4"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
    </RadioGroup>

在布局中我定义了单选按钮。 当用户单击Next时,我将替换存储在数组中的问题和选项。 一旦我到达问题5的末尾,我需要以某种方式用复选框替换它,而不是转移到新活动。这可以实现吗?

1 个答案:

答案 0 :(得分:1)

你可以这样做:

 <LinearLayout
    android:id="@+id/linear"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content">
    <LinearLayout
        android:id="@+id/linearradio"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content">

        <RadioGroup
            android:id="@+id/radiogroup"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">

            <RadioButton
                android:id="@+id/opt1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />

            <RadioButton
                android:id="@+id/opt2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />

            <RadioButton
                android:id="@+id/opt3"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />

            <RadioButton
                android:id="@+id/opt4"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" />
        </RadioGroup>
    </LinearLayout>

<LinearLayout
    android:id="@+id/linearcheck"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
android:visibility="gone">

<!-- PUT CHECKBOXES HERE -->
    </LinearLayout>
</LinearLayout>

如果您达到问题5,则设置无线电布局可见性并检查布局是否可见。