J'ai un GridView dans mon application Android qui contient un certain nombre d'ImageViews. L'espace sur mon écran est limité et je veux que les images occupent autant d'espace que possible. Malheureusement, GridView laisse toujours 5 pixels d'espace vide autour du bord extérieur des images (l'espace entre ImageViews est défini avec un espacement horizontal/vertical et se comporte correctement). L'espace vide agit comme une marge autour des ImageViews, mais je ne peux pas m'en débarrasser. Est-ce que quelqu'un sait ce qui cause cette "frontière" et comment je peux m'en débarrasser (ou au moins la rendre plus petite)? Merci.Pourquoi y a-t-il des pixels supplémentaires autour de mon Android GridView?
Mise à jour: Je crée les images ImageViews en gonflant un fichier .xml dans la méthode getView() de ma classe Adapter. Voici le xml je gonfler:
<ImageView
xmlns:android="http://schemas.android.com/apk/res/android"
android:background="#FF00FF" />
Je définis le GridView dans ma mise en page fichier xml comme ceci:
<GridView
android:id="@+id/mygrid"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/abutton"
android:layout_marginBottom="8dp"
android:numColumns="5" android:background="#FF0000"/>
Voici une capture d'écran du problème. La zone rouge dans mon GridView. Les zones violettes sont mes images. L'image affichée est un simple rectangle bleu avec un centre transparent. L'image est 45x45 pixels (mais seulement 30x30 pixels dans mon application - je m'en soucierai plus tard). La bordure rouge autour du violet est ce que j'essaie d'éliminer.
+1, vous m'avez sauvé au moins 4 heures d'essai et d'erreur. Il semble qu'une manière propre de spécifier "aucune image" dans cette situation est 'android: listSelector =" @ android: id/vide "' – mvds
@mvds android: listSelector = "@ Android: id/vide" a provoqué une exception. Il semble que GridView ne peut pas gérer ce listSelector. Je place le sélecteur à une couleur transparente à la place. – Janusz
@Janusz correct, sur certains appareils '@android: id/empty' conduit à un crash. '@android: color/transparent' semble être le bon choix. – mvds