Jump to content

[Résolu]Listview, ligne non "sélectionnable"


Sylvain-a

Recommended Posts

Salut,

Je rencontre un problème avec une listView, plus particulièrement avec la sélection des lignes.

J'explique le problème :

Je veux pouvoir cliquer sur une ligne pour accéder au contenu qui lui est relatif.

Je veux aussi pouvoir cliquer sur une checkbox dans la vue afin de supprimer ce contenu.

J'ai donc un layout qui décrit la ligne (ci dessous). Seulement, dès que j'y insère la checkbox, il devient impossible de sélectionner la ligne. Je ne comprend pas pourquoi, avez vous une idée?

Merci par avance :)

EDIT : solution en bas de la page :)

Link to comment
Share on other sites

Il est probable que le CheckBox est "prioritaire" sur la ListView pour la gestion du "touch". En effet, comment sinon déterminer si un "touch" correspond à la sélection de la checkbox ou la sélection de la ligne...

Link to comment
Share on other sites

Oui j'y ai pensé, mais pourtant certaines appli utilisent cette "méthode".

Une solution à laquelle j'ai pensé serait de "simuler" la listview (avec une gestion de "OnClick), mais je ne trouve pas ça très propre.

Je continue à chercher, si quelqu'un à une idée, je suis preneur.

Dans le cas contraire je posterai une solution ici :)

Link to comment
Share on other sites

Alors, après plusieurs jours de recherche, j'ai eu l'idée de fouiller dans les xml d'Android car il y a un layout simple_list ou un truc comme ça.

Donc après recherche j'ai trouvé ce fichier xml :list_menu_item_checkbox

qui contient le code suivant :

<CheckBox xmlns:android="http://schemas.android.com/apk/res/android"
   android:id="@+id/checkbox"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:layout_gravity="center_vertical"
   android:focusable="false"
   android:clickable="false"
   android:duplicateParentState="true" />

Et ça fonctionne :)

En espérant que ce topic en aidera d'autres :)

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...