如何在LinearLayout单元格中对齐两个TextView?

时间:2013-03-22 16:19:21

标签: android android-linearlayout textview android-gridlayout

我有一个垂直列表(垂直LinearLayout)。在每个单元格中,我有两个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>

enter image description here 几乎在那里,但没有退出...除了第二列不是完全左对齐。

这是期望的结果!!!

enter image description here

1 个答案:

答案 0 :(得分:13)

使用LinearLayoutweightSum。我修改了你的代码(见下文)。请注意weightSum中添加的LinearLayoutTextViews的更改宽度以及layout_weights的{​​{1}}:

TextViews