我试图做一个两列的gridview。我的意思是每行并排两张照片,就像这张图片一样。
但由于尺寸不一样,我的照片之间留有空格。这就是我得到的。
如您所见,第一张图片隐藏了图例,该图例显示了联系人姓名和电话号码。并且其他图片没有正确拉伸。
这是我的GridView xml文件。如您所见,columnWidth
设置为200dp。我希望它是自动的,因此图片会针对每种屏幕尺寸自动调整大小。
<?xml version="1.0" encoding="utf-8"?>
<GridView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/gridViewContacts"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:numColumns="2"
android:columnWidth="200dp"
android:stretchMode="columnWidth"
android:gravity="center" />
这是项目xml文件,代表每个项目本身。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<ImageView
android:id="@+id/imageViewContactIcon"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="fitXY" />
<LinearLayout
android:id="@+id/linearlayoutContactName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingLeft="5dp"
android:paddingTop="5dp"
android:paddingBottom="5dp"
android:background="#99000000"
android:layout_alignBottom="@+id/imageViewContactIcon">
<TextView
android:id="@+id/textViewContactName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#FFFFFF"
android:textStyle="bold"
android:textSize="15sp"
android:text="Lorem Ipsum" />
<TextView
android:id="@+id/textViewContactNumber"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#FFFFFF"
android:layout_marginLeft="5dp"
android:focusable="true"
android:ellipsize="marquee"
android:marqueeRepeatLimit="marquee_forever"
android:textSize="10sp"
android:text="123456789" />
</LinearLayout>
</RelativeLayout>
所以我想要的是每行显示两个图像,并且无论屏幕大小如何,图像都会自动调整大小。我在布局上做错了什么?
谢谢。
scaleType
在ImageView上使用了centerCrop 属性。我需要实现的是一种使图片并排显示并自动调整为不同屏幕尺寸的方法。