【问题标题】:RadioButton in multirow in single RadioGroup单个 RadioGroup 中的多行中的 RadioButton
【发布时间】:2014-09-24 07:48:49
【问题描述】:

我需要在像 this image 这样的单个单选组中的多行中创建类似单选按钮的设计。

我正在使用android:orientation="horizontal"

layout.xml

 <RadioGroup
        android:id="@+id/radiogroup"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center_horizontal"
        android:orientation="horizontal" >

        <RadioButton
            android:id="@+id/option1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:checked="true"
            android:singleLine="false"
            android:text="option1" />

        <RadioButton
            android:id="@+id/option2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:checked="true"
            android:singleLine="false"
            android:text="option2" />

        <RadioButton
            android:id="@+id/option3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:checked="true"
            android:singleLine="false"
            android:text="option3" />

        <RadioButton
            android:id="@+id/option4"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:checked="true"
            android:singleLine="false"
            android:text="option4" />

        <RadioButton
            android:id="@+id/option5"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:checked="true"
            android:singleLine="false"
            android:text="option5" />

        <RadioButton
            android:id="@+id/option6"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:checked="true"
            android:singleLine="false"
            android:text="option6" />
    </RadioGroup>

谢谢..

【问题讨论】:

    标签: android android-layout radio-button


    【解决方案1】:

    你想要达到的目标是可能的。 您必须继承 TableLayout 并以编程方式添加单选按钮

    这是链接

    参考这个MATRIX RADIO BUTTONS

    对于屏幕宽度

    Screen Width

    【讨论】:

    • 我使用的是相同的,但我在单个表格中添加了三个单选按钮,但由于屏幕宽度小,它没有出现,是否可以根据屏幕宽度自动设置单个项目
    • 我以前用过。它也适用于小屏幕尺寸。
    • 它正在工作,但我必须修复行中的项目数,但我希望自动显示宽度,例如小屏幕然后一行 3 个项目,大屏幕然后一行 4 个项目,xtra大然后 5 项在一行中..
    • 为此你必须定义你的参数。您可以通过stackoverflow.com/questions/1016896/…获取屏幕宽度
    【解决方案2】:

    parent 可以是任何像线性水平或相对(我更喜欢线性水平),在这 3 个 TableRow 子项内,在每个 tableRow 你的 RadioButtons 内。像这样的

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">
    <TableRow android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        >
        <RadioGroup>
            <LinearLayout
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:orientation="horizontal"
                >
            <RadioButton
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Radio1"
                />
            <RadioButton
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Radio2"/>
            <RadioButton
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Radio3"/>
            </LinearLayout>
            <LinearLayout
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:orientation="horizontal"
                >
                <RadioButton
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Radio4"
                    />
                <RadioButton
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Radio5"/>
                <RadioButton
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Radio6"/>
            </LinearLayout>
        </RadioGroup>
    </TableRow>
    <TableRow android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        >
        <RadioGroup>
            <LinearLayout
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:orientation="horizontal"
                >
                <RadioButton
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Radio1"
                    />
                <RadioButton
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Radio2"/>
                <RadioButton
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Radio3"/>
            </LinearLayout>
            <LinearLayout
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:orientation="horizontal"
                >
                <RadioButton
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Radio4"
                    />
                <RadioButton
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Radio5"/>
                <RadioButton
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="Radio6"/>
            </LinearLayout>
        </RadioGroup>
    </TableRow>
    

    【讨论】:

    • 它正在工作,但我必须修复行中的项目数,但我希望自动显示宽度,例如小屏幕然后一行 3 个项目,大屏幕然后一行 4 个项目,xtra大然后 5 项在一行中..
    • 这在单选组中不起作用,如果我选中任何单选按钮,则其他单选按钮不会自动取消选中
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-21
    • 1970-01-01
    相关资源
    最近更新 更多