Android tablelayout行填充

6 android android-tablelayout

我想在行的右侧创建一个带有按钮的表,如下所示.我想在每行的右侧设置填充,但这会"吃掉"最右边的按钮.有没有办法填充填充而不影响按钮的显示?

表格布局的屏幕截图

这是我的布局xml代码:

<RelativeLayout 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:padding="10dp" >

<TableLayout 
    android:id="@+id/tbl_test"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:background="#000000"
    android:orientation="vertical"
    android:layout_marginTop="1dp"
    android:layout_marginBottom="1dp"
    android:stretchColumns="1"
    >

     <TableRow android:background="#ffffff" android:layout_margin="1dp">

        <TextView android:text="Col 1" android:layout_column="0" />
        <TextView android:text="Col 2" android:layout_column="1" />
        <TextView android:text="Col 3" android:layout_column="2" />
        <TextView android:text="Col 4" android:layout_column="3" />

    </TableRow>

     <TableRow
         android:background="#ffffff"
         android:layout_marginLeft="1dp"
         android:layout_marginRight="1dp"
         android:layout_marginBottom="1dp">

         <TextView android:text="r1" android:layout_column="0" />
         <TextView android:text="padding right 0dp" android:layout_column="1" />
         <Button android:text="edit" />
        <Button android:text="delete" />

    </TableRow>

     <TableRow
         android:background="#ffffff"
         android:layout_marginLeft="1dp"
         android:layout_marginRight="1dp"
         android:layout_marginBottom="1dp"
         android:paddingRight="2dp">

        <TextView android:text="r2" android:layout_column="0" />
        <TextView android:text="padding right 1dp" android:layout_column="1" />
        <Button android:text="edit" />
        <Button android:text="delete" />

    </TableRow>

     <TableRow
         android:background="#ffffff"
         android:layout_marginLeft="1dp"
         android:layout_marginRight="1dp"
         android:layout_marginBottom="1dp"
         android:paddingRight="3dp">

        <TextView android:text="r3" android:layout_column="0" />
        <TextView android:text="padding right 2dp" android:layout_column="1" />
        <Button android:text="edit" />
        <Button android:text="delete" />

    </TableRow>

     <TableRow
         android:background="#ffffff"
         android:layout_marginLeft="1dp"
         android:layout_marginRight="1dp"
         android:layout_marginBottom="1dp"
         android:paddingRight="4dp">

        <TextView android:text="r4" android:layout_column="0" />
        <TextView android:text="padding right 3dp" android:layout_column="1" />
        <Button android:text="edit" />
        <Button android:text="delete" />

    </TableRow>

</TableLayout>

</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

Luk*_*rog 1

我不知道为什么会发生剪切问题,但修复它并获得相同外观的一种简单方法是paddingRight从 中删除该属性TableRows,并layout_marginRight在该行的最后一项上添加该属性(设置为填充值) ,删除Button