4

我有一个垂直列表(垂直线性布局)。在每个单元格中,我有两个 EditText 字段,彼此相邻。第一个应该对齐到单元格的左侧,第二个应该对齐到单元格的中间,基本上导致两列彼此相邻。我以为我使用了两列 GridLayout。然而,令我惊讶的是,第二个 EditText 与单元格的右侧对齐,而不是单元格的中间。我错了什么?

    <GridLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:alignmentMode="alignBounds"
    android:columnCount="2" >

    <TextView
        android:id="@+id/sourceLanguage"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="left|center_vertical"
        android:text="test1"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:textColor="#FF3366"
        android:textIsSelectable="true" />

    <TextView
        android:id="@+id/targetLanguage"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="right"
        android:gravity="left|center_vertical"
        android:text="test2"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:textColor="#993366"
        android:textIsSelectable="true" />

</GridLayout>

在此处输入图像描述 几乎就在那里,但没有退出......除了第二列不完全左对齐。

这是想要的结果!!!

在此处输入图像描述

4

1 回答 1

17

使用LinearLayoutweightSum。我修改了您的代码(见下文)。请注意在 中添加weightSum的、 的和的更改的LinearLayout宽度:TextViewslayout_weightsTextViews

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:weightSum="2">

    <TextView
        android:id="@+id/sourceLanguage"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:gravity="left|center_vertical"
        android:text="test1"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:textColor="#FF3366"
        android:textIsSelectable="true" />

    <TextView
        android:id="@+id/targetLanguage"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:gravity="left|center_vertical"
        android:text="test2"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:textColor="#993366"
        android:textIsSelectable="true" />

</LinearLayout>
于 2013-03-22T16:23:27.260 回答