2012-04-22 4 views
0

J'ai une liste avec des cases à cocher, ce que j'ai besoin de savoir, y at-il quand même que lorsque je clique sur la case SEUL il sera vérifié et quand je clique sur l'élément de liste je veux déclencher une fonction mais ne pas sélectionner la case à cocher. En d'autres termes, si je tape sur une ligne, la case à cocher ne doit pas être cochée sauf si je clique dessus directement.android ListView avec des cases à cocher indépendantes

voici ma liste:

listView.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_multiple_choice , items)); 
listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE); 

Répondre

2

Je mis en œuvre ce un certain temps, la chose à faire est d'utiliser plusieurs mises en page, une case à cocher contenant, un autre contenant le texte de l'élément de la liste et l'envelopper d'une mise en page relative et ajoutez-la en tant que ligne pour chaque élément de la liste, c'est-à-dire utilisez-la pour remplir et créer votre ligne dynamiquement.

Maintenant, définissez un onClickListener pour cette liste et dans ce bloc de code, écoutez l'identité de la vue qui obtient le clic et faites des choses différentes.

0

^fondamentalement ce que l'autre commentateur a dit. Personnellement, je pense que la meilleure chose à faire serait d'obtenir votre mise en page parfaite pour un seul élément de liste, puis faites un scrollview, mettez une linearlayout dans le scrollview, et peupler la linearlayout avec les éléments individuels de la liste en utilisant une boucle. Définissez onClickListeners et autres dans la boucle, ou utilisez un seul onClickListener avec des balises ou des identifiants différents pour les éléments de la liste ...

Questions connexes