TableLayout 隐藏了 ImageView 的边距

TableLayout hides the margins of an ImageView

我的 table 布局有 2 table 行,如下所示:

<TableLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_centerVertical="true"
    android:orientation="vertical" >

    <TableRow
        android:id="@+id/tableRow1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical"
        android:gravity="center_horizontal" >

        <ImageView
            android:id="@+id/splashBunny"
            android:layout_width="200dp"
            android:layout_height="200dp"
            android:src="@drawable/splash_screenbunny"
            android:visibility="visible" />

    </TableRow>

    <TableRow
        android:id="@+id/tableRow2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical"
        android:gravity="center_horizontal" >

        <ImageView
            android:id="@+id/taketest"
            android:layout_width="200dp"
            android:layout_height="100dp"
            android:src="@drawable/taketest" />

    </TableRow>
</TableLayout>

在 splashBunny ImageView 上,我开始了一个 spring 动画淡入淡出。 spring 动画从初始值(小图像视图)开始,然后以最大 spring 效果结束于它的最终值(大图像视图)。

问题是 TableRow 掩盖了 spring 对最终值的影响...更确切地说,它看起来像这样:

正如你所看到的,ImageView 的边缘被 spring 动画最大效果上的 TableRow 切割,此后图像 "resizes" 恢复正常值。

我的问题是这样的。我怎样才能避免这个问题,而不是在 spring 动画的 TableRow 内切割 ImageView 的边缘,看起来类似于:

我刚刚发现如何在表格行上使用 android:padding 不切割图像视图的边缘!