Dans mon application Android, j'ai un ImageView
où je voudrais que l'utilisateur puisse le lancer vers la gauche/droite/haut/bas pour changer l'image (cartes statiques) à l'adjacente. Mais en plus, j'aimerais avoir des capacités de zoom-pincement et une carte elle-même.Utiliser ScaleGestureDetector avec GestureDetector?
Je peux obtenir un zooming par pincement OU par pincement, mais pas ensemble. J'utilise GestureDetector
(avec un SimpleOnGestureListener
) pour le flinging. Et j'utilise ScaleGestureDetector
(de Making Sense of Multitouch) pour la mise à l'échelle.
La difficulté est de déterminer quel écouteur de gestes invoquer lors d'une action tactile. C'est moins un problème de codage, mais un problème de logique. Sur une seule action tactile, est-ce une aventure ou une balance? Même lorsqu'un zoom pincé est utilisé, le MotionEvent
initial est ACTION_DOWN. J'ai essayé d'utiliser la taille de l'image (intrinsèque ou mise à l'échelle?) Comme point de décision. Mais l'opération de mise à l'échelle initiale (lorsque la taille de l'image est intrinsèque et que je veux zoomer dessus) avec ACTION_DOWN semble m'échapper.
Quelqu'un a-t-il déjà abordé cette question avec succès?
bonne idée, mais ne fonctionne pas vraiment. Voir ma réponse – yonix