2011-05-23 9 views
0

Je dois montrer une image qui est en fait une carte avec des zones colorées, aussi je dois pouvoir: 1. faire un zoom avant et arrière avec deux doigts 2. faites défiler l'image car elle est plus grande que l'écran 3. clique sur l'image, obtient la valeur de pixel de zone cliquée (couleur), de sorte que je sais sur quelle zone l'utilisateur cliqueAfficher pour une image déroulante, zoomable, cliquable?

J'ai cherché de nombreuses heures, essayé de nombreuses approches: 1. Écrivez un cours qui étend la vue, et affichez un bitmap , J'ai trouvé un fil dans le forum à ce sujet, mais il n'y a pas de zoom, et le parchemin n'est pas naturel. 2. Utilisez un WebView pour afficher le fichier HTML qui contient l'image, donc il y a des fonctions de zoom et de défilement, cependant, je ne peux pas contrôler la limite de zoom avant/arrière, aussi, quand l'utilisateur clique, je ne suis pas sûr peut obtenir la position sur l'image en ajoutant scrollX, scrollY avec touchX, touchY. Comme l'image peut être mise à l'échelle vers le haut/vers le bas, il peut également y avoir des paddings que WebView ajoute à son contenu.

Cela me rend vraiment fou, quelqu'un peut-il m'aider?

Répondre

0

Je crois que vous pouvez créer une instance de this pour votre WebView. D'après ce que j'ai lu, le WebView est la bonne façon de le faire. Trouver des moyens de contrôler le zoom est tout ce que vous avez à faire et ScaleGestureDetector semble fournir les fonctions pour vous permettre de le faire.

1

Vous pouvez regarder http://code.google.com/p/android-pinch/: cela fournit une vue qui devrait appuyer sur pincer pour zoomer.

+0

merci pour votre réponse, il m'aide aussi – pengwang

+0

Eh bien, en fait, il semble que le zoom de pincement ne fonctionne pas –

+0

Utilisation de la WebView? – Femi

Questions connexes