这是我的问题,我的TableLayout
有多个TableRows
。
我希望他们在表格中进行正确的对齐,但我希望TableRow's
中的TableLayout
之一独立于所有尺寸并且是独立的{{1}内心居中。
这是我的代码:
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>
中的TextView
像这样居中:
但如果TableRow
有更多字符,那么“Qtd”列会像这样受到影响,空间很大:
如何根据TextView
文字的大小执行此操作不会影响第一列?
感谢您的帮助!!
答案 0 :(得分: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>