2010-10-03 8 views
1

Mon application utilisée pour utiliser un ListView standard, et registerForContextMenu (getListView()) et tout a bien fonctionné.Pourquoi la vue expandelistable ne fonctionnera-t-elle pas avec les menus contextuels?

J'avais besoin de changer mon application pour adapter aux listes imbriquées ainsi j'ai remplacé le ListView avec ExpandableListView. J'ai changé l'activité en ExpandableListActivity. J'ai également changé mon adaptateur pour un adaptateur d'arbre et mis en œuvre une classe de vue personnalisée pour peupler la liste avec (en fonction d'une vue FrameLayout).

Soudain, mes menus contextuels ont cessé de fonctionner et je ne comprends pas pourquoi. Je ne peux pas longtemps cliquer sur l'un de mes éléments de liste et je suis complètement coincé sur où commencer à chercher.

Répondre

0

Probablement une autre vue alors vos listitems reçoit le longclick. Je voudrais ajouter OnLongClickListener à toutes les vues et créer un journal ce que l'écouteur est déclenché par un longclick.

Sinon, il pourrait être utile de voir quelque chose dans votre code pour repérer une erreur.

+0

Cela n'a pas encore abouti à ma solution, mais mettre dans l'écouteur a réellement fait le clic de clic long et le menu contextuel apparaît. Je n'ai toujours pas l'animation du sélecteur (fondu orange à blanc) et il ne répond pas à l'entrée D-pad. – CodeFusionMobile

+0

Vous pouvez rediriger le clic vers la vue correcte en appelant performClick() ou performLongClick() dans la vue de droite. – Christian