0

我想在 GridView 中显示一组图像(它们具有相同的尺寸)。在 GirdView 和 GirdView Item 的布局下方。问题是图像高度被拉伸。为什么 ?

网格视图布局:

<GridView
    android:id="@+id/gvRecipes"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_alignParentRight="true"
    android:layout_below="@+id/include1"
    android:layout_margin="0dp"
    android:background="@drawable/bg"
    android:gravity="right"
    android:horizontalSpacing="10dp"
    android:padding="0dp"
    android:verticalSpacing="5dp" >
</GridView> 

GridView 项目是:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/include21"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:layout_margin="10dp"
    android:background="@drawable/btn"
    android:padding="5dp" >

    <ImageView
        android:id="@+id/imgRecibeImage"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:scaleType="fitXY"

        android:src="@drawable/img1" />

    <TextView
        android:id="@+id/txtRecibeName"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_gravity="bottom"
        android:background="#80000000"
        android:gravity="right"
        android:padding="5dp"
        android:text="Crispy Chicken and Sandwich"
        android:textColor="#ffffff"
        android:textSize="17sp" />

</FrameLayout>
4

1 回答 1

1

在您使用的比例类型中fitXY

fitXY:仅当不成比例的缩放不影响图形时才应使用此选项。对于位图图形,这几乎总是不好用。这将源图像的宽度设置为视图的宽度,将源图像的高度设置为视图的高度,而不保持源图像的纵横比。

现在你的layoutimageview宽度是match_parent,所以图像将以你的父视图的全宽显示,但是对于高度,它wrap_contentimageView调整actual height你的每一个图像。

于 2012-09-17T05:14:02.683 回答