J'ai sous-classé ExpandableListActivity pour créer une activité qui présente une arborescence simple du 'monde entier' et permet à l'utilisateur d'en sélectionner un pour une utilisation ultérieure par l'application. Je rencontre des problèmes paramètre mise au point par programme. Une chose qui me déroute est que je peux utiliser le pavé D pour mettre l'accent sur l'un des éléments enfant ou groupe dans ma ExpandableListView , mais dans mon rappel onChildClick(), isFocusable() renvoie false. Si je peux mettre au point avec le D-pad, comment peut isFocusable() retourner false?Définition de la mise au point par programmation dans ExpandableListView. Émulation des clics du D-pad dans le code?
Mon objectif est d'éviter que l'utilisateur doive toucher les entrées ExpandableListView pour les sélectionner et pour fournir quelques boutons pour déplacer la mise au point vers le haut et vers le bas dans la liste. Je veux sélection pour être facile pour les gens sans pavé D ou avec un téléphone que présente seulement le D-pad en mode paysage (par exemple Droid).
Est-il possible d'injecter par programme des clics de touche de D-pad dans mon flux d'événements d'entrée d'application?
Konstantin - Je me demandais ce que vous pensez par défaut Android focus listview et le comportement de sélection . Si vous n'avez pas de pavé directionnel, je ne connais aucun moyen de naviguer dans la liste sans utiliser l'autre main pour toucher l'écran. Je souhaite que cette activité soit facile à utiliser avec une seule main en orientation portrait (c'est-à-dire que D-D-Pad ne serait pas disponible). L'application Contacts a ce même problème à mon humble avis, vous devez utiliser l'autre main pour faire défiler et sélectionner à moins que vous ayez un d-pad à votre disposition. Cela semble loin d'être idéal ... – Mark