TableLayout:将RadioButtons与上面的列对齐

时间:2014-07-18 07:53:38

标签: android-layout

我有一个包含两列的TableLayout。 TextViews和EditTexts很好地对齐。如何让RadioButtons与TextViews和EditTexts对齐?

<TableLayout
    android:minWidth="25px"
    android:minHeight="25px"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:id="@+id/tableLayout1">
    <TableRow
        android:id="@+id/tableRow1">
        <TextView
            android:text="Column 1"
            android:textAppearance="?android:attr/textAppearanceSmall"
            android:layout_weight="1"
            android:id="@+id/textView1" />
        <TextView
            android:text="Column 2"
            android:textAppearance="?android:attr/textAppearanceSmall"
            android:layout_weight="1"
            android:id="@+id/textView1" />
    </TableRow>
    <TableRow
        android:id="@+id/tableRow2">
        <EditText
            android:layout_weight="1"
            android:id="@+id/editText3" />
        <EditText
            android:layout_weight="1"
            android:id="@+id/editText4" />
    </TableRow>
    <RadioGroup
        android:orientation="horizontal"
        android:id="@+id/radioGroup1">
        <TableRow
            android:id="@+id/tableRow3">
            <RadioButton
                android:checked="true"
                android:text="Radio Button 1"
                android:id="@+id/radioButton1" />
            <RadioButton
                android:text="Radio Button 2"
                android:id="@+id/radioButton2" />
        </TableRow>
    </RadioGroup>
</TableLayout>

这就是它的样子

enter image description here

我希望RadioButton2与Column2对齐

非常感谢

2 个答案:

答案 0 :(得分:2)

试试这个,我拿出了最后一个表格行,并为每个按钮添加了布局权重

http://i.imgur.com/Tk93oPl.png

<TableLayout
    android:minWidth="25dp"
    android:minHeight="25dp"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:id="@+id/tableLayout1">

    <TableRow
        android:id="@+id/tableRow1">

        <TextView
            android:text="Column 1"
            android:textAppearance="?android:attr/textAppearanceSmall"
            android:layout_weight="1"
            android:id="@+id/textView1" />
        <TextView
            android:text="Column 2"
            android:textAppearance="?android:attr/textAppearanceSmall"
            android:layout_weight="1"
            android:id="@+id/textView2" />

    </TableRow>

    <TableRow
        android:id="@+id/tableRow2">

        <EditText
            android:layout_weight="1"
            android:id="@+id/editText3" />
        <EditText
            android:layout_weight="1"
            android:id="@+id/editText4" />

    </TableRow>

            <RadioGroup
                android:orientation="horizontal"
                android:id="@+id/radioGroup1">

            <RadioButton
                android:checked="true"
                android:layout_weight="1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Radio Button 1"
                android:id="@+id/radioButton1" />
            <RadioButton
                android:text="Radio Button 2"
                android:layout_weight="1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:id="@+id/radioButton2" />

            </RadioGroup>

</TableLayout>

答案 1 :(得分:0)

您需要为正确的单选按钮添加 android:layout_marginLeft -

enter image description here

示例 -

   <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

   <TableLayout
    android:minWidth="25px"
    android:minHeight="25px"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:id="@+id/tableLayout1">
    <TableRow
        android:id="@+id/tableRow1">
        <TextView
            android:text="Column 1"
            android:textAppearance="?android:attr/textAppearanceSmall"
            android:layout_weight="1"
            android:id="@+id/textView1" />
        <TextView
            android:text="Column 2"
            android:textAppearance="?android:attr/textAppearanceSmall"
            android:layout_weight="1"
            android:id="@+id/textView1" />
    </TableRow>
    <TableRow
        android:id="@+id/tableRow2">
        <EditText
            android:layout_weight="1"
            android:id="@+id/editText3" />
        <EditText
            android:layout_weight="1"
            android:id="@+id/editText4" />
    </TableRow>
    <RadioGroup
        android:orientation="horizontal"
        android:id="@+id/radioGroup1">
        <TableRow
            android:id="@+id/tableRow3">
            <RadioButton
                android:checked="true"
                android:text="Radio Button 1"
                android:id="@+id/radioButton1" />
            <RadioButton
                android:text="Radio Button 2"
                android:layout_marginLeft="150dp"
                android:id="@+id/radioButton2" />
        </TableRow>
    </RadioGroup>
</TableLayout>
</LinearLayout>