Bonjour à tous,
J'ai besoin de détecter différents évènements sur un image view. Ces évènements peuvent se faire à un doigt ou deux doigts (typiquement un drag ou un pinch zoom).
J'ai un problème avec les évènements à deux doigts qui ne semble pas être détectés correctement :
Il n'y a que le log "2 doigts" qui est très difficile à obtenir.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36 public boolean onTouch(View v, MotionEvent event) { switch(event.getAction()) { //Doigt appuyé case MotionEvent.ACTION_DOWN: { Log.d("TOUCH","1 doigt"); return true; } //Doigt en mouvement case MotionEvent.ACTION_MOVE: { return true; } //Doigts levé case MotionEvent.ACTION_UP: case MotionEvent.ACTION_POINTER_UP: { Log.d("TOUCH","Levé"); return true; } case MotionEvent.ACTION_POINTER_DOWN: { Log.d("TOUCH","2 doigts"); return true; } } return false; }
Je rentre dans ACTION_POINTER_DOWN que lorsque les deux doigts sont posés très exactement au même moment , bref quasi impossible.
Y'aurais il une solution me permettant d'améliore la détection du second doigt ?
J'aimerais par exemple être capable de poser un premier doigts , puis de poser le second et ainsi passer dans un mode particulier.
Merci
Edit : J'utilise un Nexus S en 2.3.4 si ça peut avoir une incidence
Partager