définir le focus sur un élément de listview dans android
J'ai une listview qui contient textviews comme un de ses éléments.
- Maintenant, je veux le premier élément de la liste sera automatiquement porté lorsque je lance l'application
- Comment puis-je définir le focus sur un élément de la liste, quand je clique sur quelque autre point de vue, par exemple un bouton?
InformationsquelleAutor sarvesh | 2010-07-02
Vous devez vous connecter pour publier un commentaire.
La sélection et la mise au point sont deux choses différentes. Si vous voulez juste setSelection à certain point, alors vous pouvez utiliser le code ci-dessous.
Mais il ne signifie pas la
Listview
est concentré.Pour l'accent, vous devez utiliserPour changer le focus lors du clic sur un bouton, vous pouvez placer le code sur
onClick()
du bouton.ListView a un setSelected méthode qui prend l'index de l'élément dans la liste.
setItemsCanFocus(boolean)
veux dire?pour moi le problème a été résolu par
Je pense que j'ai été dans la même situation. Je voulais être en mesure de contrôler le focus de la liste par programmation avec des boutons .
Une solution est de traiter avec les
setFocusableInTouchMode
, mais je n'ai jamais réussi à faire fonctionner.L'autre solution est d'oublier le focus et l'utilisation d'un tel menu listview. Tout d'abord définir votre listview "choix unique mode" en XML ou en java :
Mylistview.setChoiceMode(1)
Alors vous serez en mesure de vérifier tout ce que vous voulez avec
Mylistview.setItemChecked(position, true)
Donc quand vous le déjeuner la demande (OnCreate), l'utilisation
Mylistview.setItemChecked(0, true)
pour vérifier votre premier article.Alors si vous voulez que votre bouton pour sélectionner l'élément suivant, par exemple, utiliser :
Vous pouvez spécifier l'apparence lorsque l'élément est coché ou pas et il y a différents pré-construit chekable listviews.
Si vous voulez plus d'explications, voir mon post
Votre ListView devrait ressembler à ceci:
mListView.setSelection(3); //or any other number