我对 GridView 内的单元格的高度有疑问。我的每个单元格内部都会有一个 imageView,如下所示:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<GridView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:verticalSpacing="10dp"
android:horizontalSpacing="10dp"
android:id="@+id/eventGridView" android:numColumns="2"/>
</LinearLayout>
这是每个单元格的 ImageView
<com.example.scheduling_android.view.RoundedCornerImageView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:maxWidth="150dp"
android:maxHeight="150dp"
xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/eventImageView"
android:adjustViewBounds="false"/>
我正在为我的 imageView 使用不同的图像大小。我得到的是,每当我的图像变大(例如,400 x 400 像素)时,单元格的高度就会变得非常高(大约是宽度的两倍,请注意我将网格设置为使用 2 列)。但是,当我将图像保存为较小尺寸(例如 160 x 160 像素)时,gridView 会正确显示。高度和宽度匹配。
这是一个屏幕截图:
似乎是什么问题?难道是大图像导致gridView错误地计算其单元格的高度?我能做些什么来解决这个问题?