当其他行使用TableLayout有多行时,如何使用单个视图填充整个TableRow

时间:2013-10-22 18:02:42

标签: android android-layout

我有这样的布局......

<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="match_parent"
  android:layout_height="fill_parent" >

  <TableRow>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:text="Number of payrates (overtime etc)"
        android:textSize="12sp" />

    <Spinner
        android:id="@+id/num_rate"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_weight="1.0"
        android:textSize="12sp" />
  </TableRow>

  <TableRow>

    <Button
        android:id="@+id/cont"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="Continue" 
        android:layout_gravity="bottom|right"/>
  </TableRow>

</TableLayout>

问题是这仍然是这样......

Yo Yo Yo

表示按钮符合与上述相同的行数。无论如何(没有切换布局类型)使它填满整行?

如果您可以指出如何将按钮移动到屏幕底部,也可以获得奖励积分。

2 个答案:

答案 0 :(得分:1)

对于要填充整行的行以及将按钮对齐到底部,请使用“线性布局”而不是“TableRow”,并给出layout_gravity =“bottom”。

尝试以下数据

<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="match_parent"
  android:layout_height="match_parent" >

  <TableRow
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:layout_weight="1.0"
      >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Number of payrates (overtime etc)"
        android:textSize="12sp" />

    <Spinner
        android:id="@+id/num_rate"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1.0"
        android:textSize="12sp" />
  </TableRow>

  <LinearLayout
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:layout_gravity="bottom" >

      <Button
          android:id="@+id/cont"
          android:layout_width="fill_parent"
          android:layout_height="wrap_content"
          android:layout_weight="1"
          android:gravity="center_horizontal"
          android:text="Continue" />
  </LinearLayout>

</TableLayout>

希望这有效

答案 1 :(得分:1)

// try this
<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <TableRow
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center">

        <TextView
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="Number of payrates (overtime etc)"
            android:textSize="12sp" />

        <Spinner
            android:id="@+id/num_rate"
            android:layout_width="0dp"
            android:layout_weight="1"
            android:layout_height="wrap_content"
            android:textSize="12sp" />
    </TableRow>

    <TableRow
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:gravity="bottom">

        <Button
            android:id="@+id/cont"
            android:layout_width="0dp"
            android:layout_weight="1"
            android:layout_height="wrap_content"
            android:text="Continue"/>
    </TableRow>

</TableLayout>