Android:如何在Tablerow中居中三个Textviews?

时间:2014-11-03 18:02:31

标签: android textview tablerow

我在TableLayout中的一个Tablerow中有三个textview字段。 第一个Textview是 始终 拥有50%的Tablerow,另外两个共享另外50%的空间。

| ----------- Textview 1 ------------ | ----- Textview 2& Textview 3 ------ |

| -------------- 50%----------------- | ------------ ------- 50%----------------- |

如何将它们全部置于中间,如下所示:

| ----------------- Textview 1& Textview 2& Textview 3 --------------- |

我该怎么做?

更新 这是我的布局

  

    <TableRow
        android:id="@+id/tableRow25"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:orientation="horizontal" >

        <TextView
            android:id="@+id/Countdoen_lbl"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Let's wait "
            android:textColor="#2c3e50"
            android:textSize="12dp"
            android:textStyle="italic"
            android:typeface="serif" >
        </TextView>

        <TextView
            android:id="@+id/Countdown1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text=""
            android:textColor="#e74c3c"
            android:textSize="12dp"
            android:textStyle="bold|italic"
            android:typeface="serif" >
        </TextView>

        <TextView
            android:id="@+id/Countdown2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text=" minutes"
            android:textColor="#2c3e50"
            android:textSize="12dp"
            android:textStyle="italic"
            android:typeface="serif" >
        </TextView>
    </TableRow>

3 个答案:

答案 0 :(得分:1)

试试这种方式,

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

    <TableLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

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

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Textview 1" />

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Textview 2" />

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Textview 3" />
        </TableRow>
    </TableLayout>

</LinearLayout>

答案 1 :(得分:0)

为所有textviews提及layout_width为“0dp”

为第一个Textview1

提供layout_weight为“2” Textview2&amp ;;

和layout_weight分别为“1” Textview3

并且用于实现35%35%35%分割,第一个和最后一个Textviews文本分别对齐左右,第二个Textview文本集中(请更新您的问题,因为并非所有stackoverflow读者都会检查如果你得到了正确的答案,我将删除描述50 25 25布局的顶部部分

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

                <TextView
                    android:layout_width="0dp"
                    android:layout_weight="1"
                    android:layout_height="wrap_content"
                    android:gravity="right"
                    android:text="Textview 1" />

                <TextView
                    android:layout_width="0dp"
                    android:layout_weight="1"
                    android:gravity="center_horizontal"
                    android:layout_height="wrap_content"
                    android:text="Textview 2" />

                <TextView
                    android:layout_width="0dp"
                    android:layout_weight="1"
                    android:gravity="left"
                    android:layout_height="wrap_content"
                    android:text="Textview 3" />
            </TableRow>

答案 2 :(得分:0)

只使用带有重心或center_horizo​​ntal的linearlayout,如果你的tablerow不在tablelayout中,它的行为就像一个水平方向的linearlayout