2013-08-02 3 views
0

Я пытаюсь создать макет сетки карты подобно тому, что используются в Google Play, как этогоAndroid проблемы с размером изображения в GridView

enter image description here

г. Схемы я использую и верстки полученного этим :

для GridView:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    tools:context=".MainActivity" 
    android:background="#e5e5e5" 
    > 

    <GridView 
    android:id="@+id/gridview" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:columnWidth="60dp" 
    android:numColumns="2" 
    android:layout_marginLeft="2dp" 

    android:verticalSpacing="10dp" 
    android:horizontalSpacing="10dp" 
    android:stretchMode="columnWidth" 
    android:gravity="center" 
    /> 

</RelativeLayout> 

для GridItem:

<?xml version="1.0" encoding="utf-8"?> 

<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:background="@drawable/bg_card" 

> 

<ImageView 
    android:id="@+id/imgIcon" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentTop="true" 
    android:layout_centerHorizontal="true" 
    /> 

    <TextView 
    android:id="@+id/txtTitle" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_margin="1dp" 
    android:textSize="17sp" 
    android:layout_below="@id/imgIcon" 
    android:layout_marginTop="35dp" 
    android:layout_centerInParent="true"/> 
</RelativeLayout> 

Вывод, который я получаю это:

enter image description here

Размер изображения, который я использую 356x500. (Я получаю несколько хорошо размерную сетку на использовании 300x300) Проблемы, которые я столкнулся являются:

  1. 1.As Это изображение показывает, карты слишком большой с большим количеством белых пространств вокруг образа и изображение не подходит, как в магазине google play. Как сделать карту предпочтительной для изображения . Размер пробела изменяется с изменением размера изображения.
  2. Карточка «застряла» в левом краю экрана. Как сохранить промежуток между краем экрана и картой.

Пожалуйста, помогите мне в исправлении этой проблемы. Благодаря

ответ

0

пространства bacause вы использовали

android:verticalSpacing="10dp" 
android:horizontalSpacing="10dp" 

Также не редактировать

<ImageView 
    android:id="@+id/imgIcon" 
    android:layout_width="300dp" 
    android:layout_height="300dp" 
    android:layout_alignParentTop="true" 
    android:layout_centerHorizontal="true" 
    /> 

в GridView использования андроида: StretchMode = "нет", а не андроид: StretchMode = "ColumnWidth"

+0

, но разве это не так для пространства МЕЖДУ двумя картами? Я изменил его на 1dp, но по-прежнему много белого пространства внутри каждой отдельной карты вокруг изображения. Спасибо –

+0

Я все равно получаю тот же результат. По-прежнему много белого пространства вокруг изображения, и изменение интервала только уменьшает пространство между картами. –

+0

пространство зависит от размера экрана и количества изображений в строке и размера изображения. –

0

Положить андроид: scaleType = "fitStart" внутри вашего

0

Использовать imgIcon.setAdjustViewBounds(true); Вы также можете сделать то же самое в xml

Смежные вопросы