Bonjour cher débutant qui cherche cette réponse ...
Grace à Viish et jahbromo, j'ai eu la solution .... et débutatnt moi-même, je suis heureux de te la faire partager.
Ci-dessous, l'implantation très simple du code qui permet de récupérer le y et le y (absolus, depuis le coin haut gauche de l'écran) d'un clic sur l'écran :
La méthode est placée dans la classe qui extends l'Activity.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 public boolean onTouchEvent(MotionEvent event) { //---quand on clique sur l'écran --- if (event.getAction() == 1) { xClic = event.getX(); yClic = event.getY(); Toast.makeText(getBaseContext(),"x = " +String.valueOf(xClic) + "," + " y = " +String.valueOf(yClic) ,Toast.LENGTH_SHORT).show(); } return false; }
Ici il y a un Toast pour l'exemple (xClic et yClic sont des float déclarés en global) mais chacun y mettra ce qu'il veut.
Plus simple tu meurs, c'est pourtant ce qui permet de faire des choses fort intéressantes ....
Merci encore aux experts du forum ....
Complété le 15/03/10 suite a une remarque de jahbromo qui recommande de ne pas faire :
... mais d'utiliser MotionEvent.ACTION_UP au lieu de sa valeur 1.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 if (event.getAction() == 1)
Le code devient :
C'est effectivement plus clair, même pour un débutant qui, en faisant une recherche sur MotionEvent.ACTION_UP, va tomber sur l'ensemble des constantes de MotionEvent, ce qui va forcément lui donner des idées ....
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 public boolean onTouchEvent(MotionEvent event) { //---quand on clique sur l'écran --- if (event.getAction() == MotionEvent.ACTION_UP) { xClic = event.getX(); yClic = event.getY(); Toast.makeText(getBaseContext(),"x = " +String.valueOf(xClic) + "," + " y = " +String.valueOf(yClic) ,Toast.LENGTH_SHORT).show(); } return false; }
Partager