J'ai 10 activités dans lesquelles je veux détecter des gestes. J'ai donc créé une classe qui implémente OnGestureListener
. Cette classe s'étend également GestureDetector
pour onTouchEvent()
. Pour connecter toutes les activités à cette classe, j'instancie cette classe d'écoute gestuelle. Le problème que je suis confronté est que je ne peux pas passer le contexte (passe par d'autres activités à cette classe) et this
à super classe. voici le code:Connexion des activités à GestureListener
public class GestureReader extends GestureDetector implements OnGestureListener{
public GestureReader(Context con)
{
super(con,this); // error here
contxt= con;
gestures = new GestureDetector(con,this);
}
@Override
public boolean onTouchEvent(MotionEvent me) {
return gestures.onTouchEvent(me);
}
.....
}
Cordialement
L'autre méthode que j'ai essayée est, je n'étend pas GestureDetector dans la classe mentionnée ci-dessus et ai créé une autre classe qui étend GestureDetector, j'ai outrepassé OnTouchEvent() dans cette classe. J'instancie cette classe qui étend GestureDetector, dans d'autres activités mais il semble que l'onTouchEvent n'écoute pas les gestes. – user2498079
@ user2498079 Peut-être que je vous comprends mal, mais il n'est normalement pas nécessaire de surcharger 'onTouchEvent()' du 'GestureDetector' mais de l'appeler' onTouchEvent() 'd'un' View' où vous l'avez outrepassé. Le détecteur traite alors les événements et appelle à son tour le 'OnGestureListener' –