2012-07-12 4 views
1

enter image description hereAndroid Détecte ChildClick dans ExpandableListView

Voici une capture d'écran de mon application où les détails d'une entrée particulière sont affichés sur le côté droit quand un enfant est cliqué dans le ExpandableListView.

L'utilisateur peut modifier les détails de chaque enfant sur le côté droit et utiliser le BackButton pour enregistrer les détails.

Maintenant, ce que je veux faire est que lorsque l'utilisateur clique sur un autre enfant, les modifications apportées à l'entrée précédente doivent également être enregistrées.

Je ne joins pas mon code, car le code est vraiment très long et complexe. Pour simplifier les choses disons que je stocke toutes les entrées dans un tableau bidimensionnel nommé "SlotList" et chaque fois qu'un enfant est cliqué je copie les détails de cet enfant dans un objet (nommé CurrentSlot) et effectue les modifications sur les membres de données CurrentSlot. Maintenant, lorsque l'utilisateur appuie sur le bouton BackButton, je sauvegarde les détails du CurrentSlot via SaveCurrentSlot (objet Slot). Ce que je veux faire est d'appeler SaveCurrentSlot (Slot obj) lorsque l'utilisateur clique sur un autre enfant dans la liste ExpandableList.

Des suggestions/conseils sur comment je devrais le faire?

Merci d'avance. :)

Répondre

2

Je pense qu'il est préférable d'utiliser la méthode onChildClick pour votre besoin.

>>Basing on the child click position you can set data to layout right. 

utiliser cette méthode

public boolean onChildClick(ExpandableListView parent, View v, int groupPosition,int childPosition,long id) { 
    System.out.println("Inside onChildClick at groupPosition = " + groupPosition +" Child clicked at position " + childPosition); 

    //ur code here 

    return true; 
} 

Pour plus de détails, cliquez sur l'enfant dans la vue liste extensible visite this

+0

Je sais que je dois utiliser onChildClick. Vous ne comprenez pas ma question. J'ai besoin de détecter si un autre enfant a été cliqué que celui qui est déjà affiché. – Swayam

+0

vous pouvez obtenir la position du parent et la position de l'enfant avec ce droit. alors ces valeurs ne vous aident pas à trouver quel enfant a été cliqué –

+0

Ouais. Ça fonctionne maintenant. Merci. :) – Swayam

Questions connexes