2010-10-07 3 views
4

Je suis récemment entrer dans la programmation Android et que vous voulez faire un jeu simple en utilisant le dessin de toile 2D. J'ai vérifié l'exemple Lunar Lander et relu quelques gestes, mais il semble que je puisse seulement détecter si un geste s'est produit. Je cherche à faire un peu plus de détection compliquée sur un glissement:Android - Détecter le chemin de Drag complexe

Je veux faire un jeu simple où un utilisateur peut faire glisser son doigt à travers un ou plusieurs objets sur l'écran et je veux être capable de détecter les objets qu'ils sont allés sur leur chemin. Ils peuvent commencer à aller verticalement, puis horizontalement, puis verticalement de nouveau, de sorte qu'à la fin d'un balayage contigu, ils ont sélectionné 4 éléments.

1) Existe-t-il des API qui exposent la fonctionnalité d'obtention du chemin complet d'un balayage comme celui-ci? 2) Comme je dessine sur un canevas, je ne pense pas pouvoir accéder à des choses comme "onMouseOver" pour les objets de mon jeu. Je vais devoir à la place détecter si le balayage était dans la boîte de délimitation de mes sprites. Est-ce que je pense à cela correctement?

Si j'ai oublié un post évident, je m'en excuse. Merci d'avance!

Répondre

2

J'ai décidé d'implémenter le gestionnaire public boolean onTouchEvent(MotionEvent event) dans mon code pour mon jeu. Au lieu d'obtenir le chemin complet, je fais une vérification pour voir quelle tuile l'utilisateur est à chaque fois que l'onTouchEvent se déclenche. Auparavant, je pensais que cet événement ne tirait qu'une seule fois au premier toucher, mais il se déclenche tant que vous vous déplacez le long de la surface de l'écran, même si vous n'avez pas retouché.