0

我希望我的单选按钮彼此之间变得更加舒适。

我希望将它们放在一个无线电组中,认为这会自动提供“如果选中这个,其他的会自动取消选中”逻辑。

但是有一个广播组:

<TableRow
        android:id="@+id/tableRow6"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="5dip">

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

        <RadioButton
            android:id="@+id/radioAlways"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:checked="false"
            android:text="@string/editlist_radgrp_always" />

        <RadioButton
            android:id="@+id/radioNever"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:checked="true"
            android:text="@string/editlist_radgrp_never" />

        <RadioButton
            android:id="@+id/radioCostChange"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/editlist_radgrp_costchange" />
    </RadioGroup>
</TableRow>

...看起来像这样:

在此处输入图像描述

没有 RadioGroup:

<TableRow
    android:id="@+id/tableRow6"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:padding="5dip">

    <RadioButton
        android:id="@+id/radioAlways"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:checked="false"
        android:text="@string/editlist_radgrp_always" />

    <RadioButton
        android:id="@+id/radioNever"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:checked="true"
        android:text="@string/editlist_radgrp_never" />

    <RadioButton
        android:id="@+id/radioCostChange"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/editlist_radgrp_costchange" />
</TableRow>

...看起来更好:

在此处输入图像描述

......但仍然可怜,或者至少可悲地,不足。

我如何让你的单选按钮挤在一起?

4

2 回答 2

1

你可以试着把它全部放在一个

LinearLayout 

并为每个按钮指定权重。像这样的东西:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<TableRow
    android:id="@+id/tableRow6"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_weight="3"
    android:padding="5dip" >

    <RadioButton
        android:id="@+id/radioAlways"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:checked="false"
        android:text="always" />

    <RadioButton
        android:id="@+id/radioNever"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:checked="true"
        android:text="never" />

    <RadioButton
        android:id="@+id/radioCostChange"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:text="costchange" />
</TableRow>

于 2014-05-16T19:31:49.570 回答
0

我能够让它以这种方式工作:

    <RadioGroup
        android:id="@+id/radioEditList"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal">

    <RadioButton
        android:id="@+id/radioAlways"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:checked="false"
        android:text="@string/editlist_radgrp_always" />

    <RadioButton
        android:id="@+id/radioNever"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:checked="true"
        android:text="@string/editlist_radgrp_never" />

    <RadioButton
        android:id="@+id/radioCostChange"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:checked="false"
        android:text="@string/editlist_radgrp_costchange" />

    </RadioGroup>

与我第一次尝试的不同之处在于,radiogroup 声明之后现在有一个直角括号,并且方向属性设置为水平。此外,不需要封闭 TableRow(事实上,它似乎把事情搞砸了)。

于 2014-05-16T21:04:45.023 回答