2012-09-16 4 views
0

Je souhaite afficher un ensemble d'images dans GridView (elles ont les mêmes dimensions). Sous la disposition de GirdView et de l'élément GirdView. Le problème est que la hauteur de l'image est étirée. Pourquoi ?Comment afficher les images dans GridView avec ses dimensions d'origine

mise en page GridView:

<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> 

article GridView est:

<?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> 
+0

En fait, vous pouvez définir la largeur et la hauteur du correctif de vue d'image pour l'afficher correctement. –

Répondre

1

Dans votre type d'échelle que vous avez utilisé fitXY:

fitXY: Celui-ci ne devrait être utilisée que si l'échelle disproportionnée fait n'affecte pas le graphique. Dans le cas des graphiques bitmap, c'est presque toujours mauvais à utiliser. Cela définit la largeur de l'image source sur la largeur de la vue et la hauteur de l'image source sur la hauteur de la vue, sans maintenir le ratio d'aspect de l'image source.

Maintenant, votre layout et imageview largeur est match_parent, de sorte que l'image sera affichée en pleine largeur de votre vue parent, mais en hauteur, il est wrap_content de sorte que le imageView adaptera la actual height de votre chaque image.

Questions connexes