如何在Android TableLayout中制作可扩展的TextView?

时间:2012-07-03 16:15:35

标签: android android-layout android-ndk

我想创建包含2行和3列的表格布局, 第一行我想添加3个TextView,在第二行我想添加一个跨越三列的按钮。

每个文本视图都填充了来自其他点击操作的文本,因此,它可能包含100个字符,并且可能不包含字符 所以,如果第一个有chars而另一个没有chars,第一个应该扩展以覆盖所有空间,但如果两个包含文本,那么两个应该扩展以填充空白区域

谁能帮帮我? 这是我的代码,但是这段代码不正确,它将表分成三个等于列

<TableLayout
        android:id="@+id/temps_holder"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_above="@+id/google_adView"
        android:background="@drawable/round"
        android:gravity="right"        
        android:stretchColumns="0" >

        <TableRow>

            <TextView
                android:id="@+id/time_temp"
                android:layout_width="0dp"
                android:layout_height="fill_parent"
                android:layout_marginLeft="3dp"
                android:layout_marginRight="3dp"
                android:layout_weight=".33"
                android:gravity="center"
                android:singleLine="false"
                android:text=""
                android:textColor="@color/White"
                android:textSize="16sp" />

            <TextView
                android:id="@+id/tempText2_TextView"
                android:layout_width="0dp"
                android:layout_height="fill_parent"
                android:layout_weight=".33"
                android:gravity="center"
                android:singleLine="false"
                android:text=""
                android:textColor="@color/White"
                android:textSize="16sp" />

            <TextView
                android:id="@+id/tempText1_TextView"
                android:layout_width="0dp"
                android:layout_height="fill_parent"
                android:layout_weight=".33"
                android:gravity="center"
                android:singleLine="false"
                android:text=""
                android:textColor="@color/White"
                android:textSize="16sp" />
        </TableRow>

        <TableRow>

            <Button
                android:id="@+id/viewMatched_btn"
                android:layout_width="fill_parent"
                android:layout_height="40dp"                
                android:layout_span="3"
                android:background="@drawable/wood_btn"
                android:onClick="viewResults"
                android:text="@string/viewMatched"
                android:textColor="@color/White"
                android:visibility="invisible" />
        </TableRow>
    </TableLayout>

1 个答案:

答案 0 :(得分:0)

这就是你想要的吗?

    <TableRow>

        <Button
            android:id="@+id/viewMatched_btn"
            android:layout_width="fill_parent"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Button"            
            android:onClick="viewResults"               
            android:visibility="visible" />
    </TableRow>
</TableLayout>

将按钮属性:android:visibility更改为visible并添加:

android:layout_width="wrap_content" android:layout_height="wrap_content"

enter image description here

enter image description here

enter image description here