Sujet #9 – TouchEvent (Application traces)
Il s’agit de capturer les événements générés lorsqu’on touche l’écran. Pour cela on utilise l’interface *OnTouchListener ». Dans un premier temps vous pourrez afficher dans le log la position de l’événement capturé, mais l’objectif est d’afficher un petit disque marquant la position du dernier endroit touché (une trace
).
Selon l’appareil, le système est capable de reconnaître un ou plusieurs doigts (a priori jusqu’à 10 sur un Galaxy S8 ou S9). On ne demande d’afficher qu’un seul doigt !
Docs :
- https://developer.android.com/training/graphics/opengl/touch
- http://www.vogella.com/tutorials/AndroidTouch/article.html
Application de démo
Créez une app de test dans laquelle l’utilisateur laisse la trace de son doigt. Il s’agit d’un simple disque là ou l’utilisateur a touché l’écran. La trace disparaît lors du toucher suivant. Pour cela on créé un widget à partir d’un View, qui sera le listener des événements touch
et on utilise la méthode onDraw
.
Il est possible d’afficher les derniers points touchés (pas seulement un) mais dans ce cas il faut mémoriser leur position dans un tableau et tous les réafficher dans le onDraw
.
Présentation
Expliquez comment traiter les événements de type TouchEvent et comment dessiner sur un widget View.