我有一个相当复杂的布局,其中包含一个相对布局的 ScrollView。RelativeLayout 包含一个充满 ImageViews 的 TableLayout。大约有40张图片。它们都是 jpeg,它们的宽度正好是 200 像素。
如果我将表格分为三列,它工作正常。但是,如果我尝试将表格布置在两列中,则第一列可以很好地显示图像,但在第二列中,图像被“截断”并且图像的最右侧部分不可见。
现在我想出的解决方法是创建一个“填充图像”,它是一个 50 像素宽和 100 像素高的矩形。我把它放在表格第一行的第三列,这使它成为一个三行表格,并将其他两列揉成一团,以便它们都可以阅读。但似乎应该有更好的方法。
这是我的 xml 的片段(这里包括第一行中的填充图像。
<TableLayout
android:id="@+id/pls_table"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_below="@id/pl_title"
android:shrinkColumns="*"
android:stretchColumns="*" >
<TableRow android:layout_height="wrap_content" >
<ImageView
android:id="@+id/pls_1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:clickable="true"
android:onClick="tsdetail2"
android:scaleType="fitCenter"
android:src="@drawable/abng_pl" />
<ImageView
android:id="@+id/pls_2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:clickable="true"
android:onClick="tsdetail2"
android:scaleType="fitCenter"
android:src="@drawable/ag_supply_pl" />
<ImageView
android:id="@+id/pls_fill"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:scaleType="fitCenter"
android:src="@drawable/filler_image" />
</TableRow>
<TableRow android:layout_height="wrap_content" >
<ImageView
android:id="@+id/pls_3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:clickable="true"
android:onClick="tsdetail2"
android:scaleType="fitCenter"
android:src="@drawable/beard_implement_pl" />
<ImageView
android:id="@+id/pls_4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:clickable="true"
android:onClick="tsdetail2"
android:scaleType="fitCenter"
android:src="@drawable/j_r_tire_pl" />
</TableRow>