Android ListView rembourrage pour le contenu, sans bouger ListView hauteur?
J'ai une ListView avec un tas d'éléments à l'intérieur. Comment puis-je faire le haut et le bas des éléments ont une marge supérieure de 10dp pour le point haut et le bas de la marge de 10dp pour le fond de l'élément? Maintenant, je peux le faire avec un rembourrage ou de la marge sur la liste, mais le résultat est que lorsque vous faites défiler le bord de la ListView est maintenant 10dp à partir du bas de l'écran. De toute façon autour de cela? J'ai aussi essayé de fixer les marges à l'intérieur de la méthode getView de ma carte mais je ne vois pas de marge d'options pour AbsListView.LayoutParams. Toute aide serait super.
Grâce
- Méchant suggestion, mais comment faire un top / bottom padding pour le premier / dernier élément de la vue? Vous devez vérifier et de le mettre sur tous les points de vue dans
getView
...
InformationsquelleAutor Bobbake4 | 2011-10-24
Vous devez vous connecter pour publier un commentaire.
L'astuce consiste à inclure
android:clipToPadding="false"
dans votre définition de la vue, par exemple:Vous pouvez obtenir de l'espace en haut et en bas de votre Liste, à l'intérieur de la zone de défilement, en utilisant les en-têtes et pieds de page. Voici un exemple rapide:
Définir votre remplissage de vue, j'ai nommé header_footer.xml:
Maintenant votre
onCreate
méthode ressemble à ceci, si vous avez nommé votre ListViewlistView
:Et ensuite configurer votre adaptateur.
View
sera parfait - il n'y a pas besoin d'unLinearLayout
l'intérieur d'un autreLinearLayout
.Pourquoi ne pas simplement de vérifier la position de l'élément par rapport à la taille de votre liste:
Padding:
Pour les marges utilisation
Ex:
c'est à condition que vous avez mis en œuvre le getCount() la méthode correctement pour votre adaptateur.