ListView mode de choix

Quelqu'un peut-il me dire pourquoi lorsque j'ai mis cette propriété de ma ListView:

mList.setChoiceMode(ListView.CHOICE_MODE_SINGLE);

Les éléments de la liste semble recharger à tout moment je clique sur l'un d'eux? Si je supprime que bien que les comportements ne pas se montrer.

Je suis réglage de ce paramètre dans le OnCreateView méthode de mon activité, j'ai pu également mis cela dans mon xml obtenir le même résultat:

<ListView
        android:id="@+id/lista"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="@string/per_lista"
        android:fadingEdge="none"
        android:divider="#e2e2e2"
        android:dividerHeight="1dp"
        android:choiceMode="singleChoice">
  • quand faire appel à cette fonction?
  • voir mon edit
  • Êtes-vous sûr que les articles sont de rechargement?, parce que dans une liste, la vue est recharger tout le temps, mais pas exactement les éléments, choiceMode pas de questions dans ce comportement. Juste mon avis
  • oui, les lignes sont de rechargement , chaque ligne de ma ListView a une ImageView et quand je clique sur n'importe quelle ligne de la ImageViews de toutes les lignes visibles sont rechargées
  • Chaque fois qu'un élément est coché/décoché la ListView appels requestLayout() qui provoque ses enfants à être redessinée. Cela ne signifie pas que les éléments sont en train d'être rechargé, cependant. Si vos articles sont en train d'être rechargé alors nous aurons besoin plus d'informations. Pourriez-vous mettre en place le code de votre carte et de fragment/activité? Juste au cas où vous voulez avoir un look, le ListView source peut être trouvé par le biais de ce lien grepcode.com/file/repository.grepcode.com/java/ext/...
  • Oui, il ressemble à la listview est en train de redessiner les enfants est presque comme si notifyDataSetChanged() a été appelée sur la carte. Connaissez-vous un moyen d'éviter les éléments de la liste à être redessinée?
  • Malheureusement, je ne sais pas et je ne suis même pas sûr que c'est le but de comportement depuis qu'ils les éléments sont redessinées, de sorte que leur état sélectionné peut être de définir ou redéfinir en fonction de la sélection. Vous pouvez toujours utiliser le code source comme base pour votre propre personnalisé ListView qui ne demande pas un modèle de réussite/dessin après la sélection de ses changements d'état.
  • Vous rencontrez des problèmes avec la redéfinition? Je le dis parce que dans une demande que j'ai faite, j'ai eu ce problème: lors de la ListView est de redessiner certains cas, l'affichage de l'image ne se charge pas le bon drawable. La logique de sélection de l'image était dans la classe d'Adaptateur, ce que j'ai fait pour corriger le problème a été de passer à la carte un Objet avec l'image et le texte que j'ai besoin d'afficher. Peut-être cela peut vous aider. BestRegards!
  • Merci pour vos commentaires les gars, mais je pense que ebarrenchea réponse est celle qui décrit le mieux mon problème et explique, @ebarrenchea vous pouvez poster votre commentaire est une réponse?
  • J'ai combiné les deux observations en réponse. Merci. 🙂

InformationsquelleAutor BigBen3216 | 2013-03-02