Próbuję utworzyć widok siatki z dwoma kolumnami. Mam na myśli dwa zdjęcia obok siebie, tak jak to zdjęcie.
Ale moje zdjęcia mają odstępy między nimi, ponieważ nie są tego samego rozmiaru. Oto co otrzymuję.
jak widać pierwsze zdjęcie ukrywa legendę, która pokazuje nazwę kontaktu i numer telefonu. a pozostałe zdjęcia nie są poprawnie rozciągnięte.
Oto mój plik xml GridView . Jak widać, columnWidth
ustawiony jest na 200dp . Chciałbym, aby była automatyczna , więc rozmiar obrazu będzie się zmieniać automatycznie dla każdego rozmiaru ekranu.
<?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" />
a tutaj jest plik xml elementu, który reprezentuje każdy element sam.
<?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>
Chcę więc wyświetlać dwa obrazy w wierszu, a obrazy automatycznie się zmieniają, bez względu na rozmiar ekranu. Co robię źle na moim układzie?
Dzięki.
scaleType
właściwości centerCrop w ImageView. To, co muszę osiągnąć, to sposób na robienie zdjęć obok siebie i automatyczne zmienianie rozmiaru dla różnych rozmiarów ekranu.