Android ListView qui ne défile pas?
Je suis en train de faire une mise en page qui est quelque chose de similaire à la façon dont le marché android est...où est-dire en vertu de commentaires il y a ce qui semble être un ListView
mais elle ne se défile pas (toute la page de défilement, mais pas les commentaires). Je ne suis pas sûr si son même une ListView, mais je veux quelque chose qui ressemble à la vue de la liste (c'est à dire. ces barres et ce n'est pas, mais PAS de DÉFILEMENT). Il y a des gens ce qui suggère d'utiliser un LinearLayout
au lieu d'un ListView
mais je veux aussi les éléments cliquables et ouvrir une nouvelle activité. S'il vous plaît aider?
Ma configuration actuelle de l'arbre, c'est comme si
<LinearLayout>
<ScrollView>
<RelativeLayout>
Je suis à la recherche pour mettre le contenu à l'intérieur de la RelativeLayout
.
source d'informationauteur Kman
Vous devez vous connecter pour publier un commentaire.
Comme expliqué par les programmeurs qui ont fait le listView dans ce vidéo de GoogleIo ne jamais mettre une liste à l'intérieur d'un défilement de l'Affichage. Si votre liste ne doit pas faire défiler l'utilisation d'un ViewGroup comme un linéaire de la Mise en page et d'ajouter tous les éléments de cette ViewGroup en boucle dans votre code. Si vous voulez une ligne entière à être cliquable, vous devez utiliser un autre ViewGroup le nœud racine pour chaque ligne et ajouter le OnClickListener de ce point de Vue.
Exemple De Code:
Ce code va générer une Vue pour chaque élément que vous avez et le mettre dans le viewGroup. Après chaque point, mais il va également ajouter une cloison à l'viewGroup.
J'ai eu le même problème. J'ai simplement étendu par défaut
LinearLayout
avec unsetAdapter
méthode:Espérons que cette aide!
Je n'ai pas assez de points de réputation pour commenter, mais pour ceux n'ayant de 1 item apparaissant dans les Langes de la solution assurez-vous de définir les lignes suivantes dans votre fichier de mise en page:
Ailleurs, il apparaît que seul un élément est ajouté, mais en réalité, ils sont juste d'être ajoutée à l'horizontale...espérons que cela aide quelqu'un.
Vous pourriez faire un
ListView
et de les mettre tous à l'intérieur d'elle, de sorte que l'ensemble de la page défile. Vous pourriez le déploiement de votre propre implémentation de l'adaptateur, mais je recommande d'utiliser CommonsWare excellent MergeAdapterVous pouvez ajouter des étiquettes ou des barres avec
addView()
et les listes deaddAdapter()
. Découvrez la page pour plus d'informations sur l'utilisation, et le projet de démonstration.