Android,在TableLayout中设置列大小

时间:2013-03-01 07:44:39

标签: android tablelayout

所以,我通过膨胀布局文件从代码创建TableLayout。我试图让第一行跨越两列,每一行包含两个TextView:键和值。问题是价值可能很长,所以我在TableLayout xml中使用设置android:stretchColumnsandroid:shrinkColumns。现在Key列和Value Column看起来很好,但是首先,跨越,标题比屏幕大小更宽。

我的文件的当前情况如下:

tale_row.xml:

 <TableRow xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:paddingTop="5dp"
     android:paddingBottom="5dp"
     android:paddingLeft="10dp"
     android:paddingRight="10dp" >
        <TextView 
            android:id="@+id/key"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textColor="@color/gray"
            android:textStyle="bold"
            android:layout_marginRight="10dp" />
        <TextView 
            android:id="@+id/value"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textColor="@android:color/black" />"
 </TableRow>

header_row.xml:

<TableRow xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

    <TextView 
        android:id="@+id/header"
        android:layout_height="wrap_content"
        android:layout_width="wrap_content"
        android:layout_span="2"
        style="@style/group_separator_style"
        android:layout_marginBottom="5dp"
        android:layout_marginLeft="5dp"
        android:layout_marginRight="5dp" />

</TableRow>

table.xml:

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:stretchColumns="1" >
</TableLayout>

任何想法,可能是什么原因?将属性clipChildrenclipToPadding设置为true无效。

1 个答案:

答案 0 :(得分:0)

看起来设置android:stretchColumns="1"android:shrinkColumns="1"解决了问题