2013-07-25 70 views
0

在TableLayout我必须对齐我的文本在第一列右侧和第三列文本左(我的第二列是只是虚拟列间距)。对齐权是问题。如果第二列中的内容不符合如何使其在第二行继续的一行,我也有一个担心,因为现在,如果我在第二列输入大文本,现在它正尝试适合一行并出去的手机屏幕宽度。表格布局列taxt右对齐

<?xml version="1.0" encoding="utf-8"?> 
<TableLayout android:id="@+id/widget35" 
android:layout_width="fill_parent" android:layout_height="fill_parent" 
android:orientation="vertical" android:stretchColumns="0,2" 
xmlns:android="http://schemas.android.com/apk/res/android"> 
<TableRow android:id="@+id/widget43" android:layout_width="fill_parent" 
    android:layout_height="wrap_content" android:orientation="horizontal"> 
    <LinearLayout android:id="@+id/widget33" 
     android:orientation="horizontal" android:layout_width="wrap_content" 
     android:layout_height="wrap_content" android:background="@color/red"> 
     <TextView android:id="@+id/widget36" android:layout_width="wrap_content" 
      android:layout_height="wrap_content" android:text="TextView is in Rightassaasas" 
      android:layout_gravity="top|right" /> 
    </LinearLayout> 
    <LinearLayout android:id="@+id/widget33" 
     android:layout_width="5dip" android:layout_height="wrap_content" 
     android:background="@color/white"> 
     <TextView android:id="@+id/widget36" android:layout_width="2dip" 
      android:layout_height="wrap_content" /> 
    </LinearLayout> 
    <LinearLayout android:id="@+id/widget37" 
     android:layout_width="wrap_content" android:layout_height="wrap_content" 
     android:background="@color/green"> 
     <TextView android:id="@+id/widget38" android:layout_width="wrap_content" 
      android:layout_height="wrap_content" android:text="TextView" 
      android:layout_gravity="left" /> 
    </LinearLayout> 
</TableRow> 
<TableRow android:layout_width="fill_parent" 
    android:layout_height="wrap_content" android:orientation="horizontal"> 
    <LinearLayout android:orientation="horizontal" 
     android:layout_width="wrap_content" android:layout_height="wrap_content" 
     android:background="@color/red"> 
     <TextView android:layout_width="wrap_content" 
      android:layout_height="wrap_content" android:text="TextView" 
      android:layout_gravity="right" /> 
    </LinearLayout> 
    <LinearLayout android:layout_width="5dip" 
     android:layout_height="wrap_content" android:background="@color/white"> 
     <TextView android:layout_width="2dip" android:layout_height="wrap_content" /> 
    </LinearLayout> 
    <LinearLayout android:layout_width="wrap_content" 
     android:layout_height="wrap_content" android:background="@color/green"> 
     <TextView android:layout_width="wrap_content" 
      android:layout_height="wrap_content" android:text="TextView" 
      android:layout_gravity="left" /> 
    </LinearLayout> 
</TableRow> 

回答

0

您的布局似乎过于复杂,你真的只需要与两个TextViews与正确设置重力单一的LinearLayout。您可以使用layout_margin为您的“中间列”创建间距,如下所示:

<TableRow android:id="@+id/widget43" android:layout_width="fill_parent" 
    android:layout_height="wrap_content" android:orientation="horizontal"> 
    <LinearLayout android:id="@+id/widget33" 
     android:orientation="horizontal" android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 

     <TextView android:id="@+id/widget36" android:layout_width="wrap_content" 
      android:layout_height="wrap_content" android:text="TextView is in Rightassaasas" 
      android:layout_gravity="top|right" android:gravity="right" android:layout_marginRight="5dp" android:background="@color/red" /> 
     <TextView android:id="@+id/widget38" android:layout_width="wrap_content" 
      android:layout_height="wrap_content" android:text="TextView" 
      android:layout_gravity="left" android:gravity="left" android:layout_marginLeft="5dp" android:background="@color/green" /> 
    </LinearLayout> 
</TableRow>