2010-11-05 7 views
1

Mon application Android a actuellement TableLayout avec plusieurs TableRow s contenant un ImageView puis TextView côte à côte.ANDROID: Mettez en surbrillance/Sélectionnez avec trackball et quand Touché

En cliquant n'importe où sur un TableRow va charger une nouvelle activité montrant plus d'informations.

Si j'utilise la boule de commande, elle va se frayer un chemin à travers les rangées, mais je ne vois pas lequel est actuellement sélectionné alors je n'ai aucune idée de TableRow sélectionné lorsque je clique sur le bouton pour charger activity. De même, lorsqu'un utilisateur touche l'écran avec un doigt, il n'y a pas de surbrillance indiquant lequel il a sélectionné.

J'ai cherché avec des termes tels que Sélectionnez, sélectionné, Mise au point, mais aucune des pages que je vois retourné me donner une idée de réaliser ce que je demande.

L'utilisation d'un TableLayout est nécessaire je suppose, c'était juste ce que j'ai utilisé et peut-être même pas la meilleure solution!

Des exemples là-bas, je peux essayer de faire fonctionner cela?

Merci! :)

Répondre

2

Vous devez utiliser des sélecteurs, par exemple, vous avez une vue qui tient vue vous ramez, vous devez créer sélecteur comme celui-ci

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_focused="true" android:drawable="@drawable/list_viewentry_focused" /> 
    <item android:state_pressed="true" android:drawable="@drawable/list_viewentry_pressed" /> 
    <item android:drawable="@drawable/list_viewentry_normal" /> 
</selector> 

et mettez-le dans votre dossier dessinables

alors vous devez définir android:background @drawable/drawable_name

+0

merci pour la réponse, mais je ne comprends pas vraiment ... j'ai essayé, mais cela n'a pas fonctionné – neildeadman

+0

regarder, votre besoin est d'avoir différentes représentations de vue pour vous élément de vue tout en mettant l'accent , toucher et normal. Pour cela, vous devriez avoir trois images de fond différentes à apparaître. Dans l'exemple fourni, ce sont des images qui se trouvent dans le dossier drawable et nommées list_viewentry_normal.png, list_viewentry_focus.png, list_viewentry_pressed.png. Pour ce faire, vous devez créer un sélecteur: il s'agit d'un fichier xml distinct contenant du contenu que je vous ai déjà fourni. Et comme résultat, vous devez définir un arrière-plan de certains vue par ce sélecteur (comme ce android: background @ drawable/drawable_name) – endryha

+0

voir http://developer.android.com/guide/topics/resources/drawable-resource.html pour Plus d'informations – endryha

Questions connexes