GridView comportement bizarre
Bonjour,
J'ai un comportement vraiment bizarre avec ma gridView, sur certains appareils (comme le nexus 5), ma gridView peut se balader verticalement... C'est assez compliqué à expliquer mais par exemple si j'essaye de la monter ça bloque bien par contre si je la déscend puis remonte, là elle peut se balader verticalement et aller en dehors de l'écran jusqu'à ne plus la voir...
Voici mon activité de base contenant un petit header et un FrameLayout dans lequel je vais injecter ma gridView via un fragment :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
| <RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/background"
>
<LinearLayout
android:id="@+id/layoutUserCardHeader"
android:layout_width="match_parent"
android:layout_height="60dp"
android:background="@color/color_fc_bleu_fonce"
android:gravity="center_vertical">
<ImageView
android:id="@+id/ivUserCardHeaderLogo"
android:layout_width="0dp"
android:layout_height="30dp"
android:src="@drawable/logo_nature"
android:layout_marginRight="10dp"
android:layout_marginLeft="10dp"
android:layout_weight="1"/>
<TextView
android:id="@+id/tvUserCardHeaderName"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:textColor="@android:color/white"
android:textSize="16sp"
android:gravity="center"
android:layout_weight="5"/>
<ImageButton
android:id="@+id/bUserCardAction"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginRight="10dp"
android:layout_marginLeft="10dp"
android:src="@drawable/icon_search"/>
</LinearLayout>
<FrameLayout
android:id="@+id/containerUserCard" android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/layoutUserCardHeader"/>
</RelativeLayout> |
Ma gridView :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| <GridView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:context=".GridViewFragment"
android:id="@+id/gridView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:columnWidth="80dp"
android:numColumns="3"
android:verticalSpacing="10dp"
android:horizontalSpacing="1dp"
android:stretchMode="columnWidth"
android:gravity="center" /> |
Et mes item de ma gridView :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| <?xml version="1.0" encoding="utf-8"?>
<!-- the parent view -->
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:gravity="center"
android:padding="5dp" >
<!-- the ImageView for the icon -->
<ImageView android:id="@+id/ivIcon"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="1dp"
android:scaleType="fitXY"
android:layout_centerHorizontal="true"
android:adjustViewBounds="true"/>
</RelativeLayout> |
Le but étant d'avoir une grille avec des images, d'en avoir trois par ligne et que le tout fasse exactement la largeur de l'écran (que la taille des images s'adapte). J'ai essayé plusieurs choses mais là je sais plus quoi faire, est-ce que quelqu'un aurait une solution ou aurait déjà eu ce problème ? :/
Merci d'avance