2017-04-07 97 views
2

这是我的问题,我有一个TableLayout,它有多个TableRowsAndroid:让TableRow独立于TableLayout

我希望他们做出正确对齐表格,但我想的是,TableLayoutTableRow's之一是独立于所有尺寸的并且是独立的和TextView内被集中。

这是我的代码:

<FrameLayout 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" 
android:background="@android:color/white" 
android:paddingBottom="@dimen/activity_vertical_margin" 
android:paddingLeft="@dimen/activity_horizontal_margin" 
android:paddingRight="@dimen/activity_horizontal_margin" 
android:paddingTop="@dimen/activity_vertical_margin" 
tools:context="com.example.catarinaferreira.tripmanager.reservation_payment"> 

<!-- TODO: Update blank fragment layout --> 
<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical"> 

<LinearLayout 
    android:id="@+id/layout_title_total" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_gravity="right" 
    android:background="?attr/colorControlHighlight" 
    android:gravity="right" 
    android:orientation="horizontal"> 

    <TextView 
     android:id="@+id/textView15" 
     android:layout_width="wrap_content" 
     android:layout_height="match_parent" 
     android:layout_weight="1" 
     android:background="@color/laranja_logo" 
     android:text="Pagamento" 
     android:textColor="@color/white" 
     android:textSize="26dp" 
     android:textStyle="normal|bold" /> 
    </LinearLayout> 

    <Space 
     android:layout_width="match_parent" 
     android:layout_height="10dp" /> 

    <TextView 
     android:id="@+id/textView26" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:fontFamily="casual" 
     android:text="Resumo Reserva" 
     android:textColor="@android:color/black" 
     android:textSize="24sp" 
     android:textStyle="bold" /> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="5dp" 
     android:background="@android:color/black" 
     android:orientation="vertical"></LinearLayout> 

    <Space 
     android:layout_width="match_parent" 
     android:layout_height="5dp" /> 

    <LinearLayout 
     android:id="@+id/total_going_layout" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="vertical"> 

     <TableLayout 
      android:id="@+id/total_going_table" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:divider="@android:color/darker_gray" 
      android:showDividers="middle"> 

      <TableRow 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:background="#f1f1f1" 
       android:paddingBottom="10dp" 
       android:paddingTop="5dp"> 

       <TextView 
        android:id="@+id/textView28" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_marginRight="10dp" 
        android:text="Qtd" 
        android:textColor="@android:color/black" 
        android:textSize="18sp" 
        android:textStyle="bold" /> 

       <TextView 
        android:id="@+id/textView29" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_marginRight="15dp" 
        android:fontFamily="sans-serif" 
        android:text="Descrição" 
        android:textColor="@android:color/black" 
        android:textSize="18sp" 
        android:textStyle="bold" /> 

       <TextView 
        android:id="@+id/textView30" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_marginRight="10dp" 
        android:text="Preço(€)" 
        android:textColor="@android:color/black" 
        android:textSize="18sp" 
        android:textStyle="bold" /> 

       <TextView 
        android:id="@+id/textView31" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_marginRight="10dp" 
        android:text="Total(€)" 
        android:textColor="@android:color/black" 
        android:textSize="18sp" 
        android:textStyle="bold" /> 

      </TableRow> 

      <TableRow 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:background="@android:color/holo_blue_light" 
       android:gravity="center"> 

       <TextView 
        android:id="@+id/textView32" 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:text="Ida" 
        android:textAlignment="textStart" 
        android:textAllCaps="false" 
        android:textColor="@android:color/white" 
        android:textSize="18sp" 
        android:textStyle="bold" /> 

      </TableRow> 

      <TableRow 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" > 

       <TextView 
        android:id="@+id/textView35" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="1" 
        android:textColor="@android:color/black" 
        android:textSize="18sp" /> 

       <TextView 
        android:id="@+id/textView41" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="Adulto" 
        android:textColor="@android:color/black" 
        android:textSize="18sp" /> 

       <TextView 
        android:id="@+id/textView42" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="20€" 
        android:textColor="@android:color/black" 
        android:textSize="18sp" /> 

       <TextView 
        android:id="@+id/textView43" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="20€" 
        android:textColor="@android:color/black" 
        android:textSize="18sp" /> 
      </TableRow> 

     </TableLayout> 

    </LinearLayout> 

</LinearLayout> 

然后,我告诉你我的问题的图像。我想在TableRow蓝色backgound的TextView为中心这样的:

enter image description here

但如果TextView有更多的字符,该“离散度”一栏将受到影响这样一个大的空间:

enter image description here

我怎么能做到这一点的TextView文本不影响第一列的大小?

感谢您的帮助!

回答

4

尝试改变的TableRow本:

    <TableRow 
        android:layout_width="match_parent" 
        android:layout_height="wrap_content" 
        android:weightSum="1" 
        android:background="@android:color/holo_blue_light"> 

        <TextView 
         android:id="@+id/textView32" 
         android:layout_width="0dp" 
         android:layout_height="wrap_content" 
         android:text="Regresso" 
         android:layout_weight="1" 
         android:gravity="center" 
         android:textAllCaps="false" 
         android:textColor="@android:color/white" 
         android:textSize="18sp" 
         android:textStyle="bold" /> 

       </TableRow> 
+0

@Catarina费雷拉,让我知道,如果它是有帮助的。 –

+0

是的,它工作得很好!我只是要时间,因为这个问题是编程式的,我创建了这个布局适合我在代码中做的事情。我调整了这个新版本的代码版本,现在我不再有这个问题了。谢谢!! –