Chciałem stworzyć galerię ze zdjęciami. Obrazy w galerii powinny być powiększane i można je wyświetlać. Mogłem powiększyć obraz, ale nie mogłem ustawić granic zoomu i zapobiec przesunięciu obrazu z ekranu. Użyłem poniższy kod, aby powiększyć obraz: http://code.google.com/p/4chan-image-browser/source/browse/src/se/robertfoss/MultiTouch/TouchImageView.java?spec=svnd3e623ddeb6f9e97d9eba2c7aaa7c4567a3822b5&r=d3e623ddeb6f9e97d9eba2c7aaa7c4567a3822b5ImageView Skalowanie-zoom Skala Granice i panoramy
Pierwsze podejście: użyłem TouchImageView dostarczyć zdjęcia do galerii, to pozwala mi pinch zoom ale nie można przewijać galerii. tzn. nie mogę rozróżnić między zdarzeniem z jedną kartą i kartą, aby przewinąć wydarzenie.
Drugie podejście: Wykorzystano ImageView do dostarczania zdjęć do galerii, a jeśli użytkownik kliknie na którejkolwiek z pozycji galerii, wyświetla wybrany obraz w TouchImageView, gdzie użytkownik może uszczypnąć i powiększyć obraz. Ale to także uniemożliwia mi przewijanie widoku galerii. A także jak ustawić limity zoomu i przesunąć granice na wybranym obrazie?
Masz dobry pomysł wywoływania 'matrix.getValues (f);'. Jednak rozwiązaniem nie jest zwracanie wartości true, ponieważ spowoduje to po prostu zatrzymanie ekranu. Raczej, jeśli wartość skalowania ma wkrótce przekroczyć wartość MAX_SCALE, ustaw wartość skalowania równą MAX_SCALE. Sprawdź poniższą odpowiedź, aby uzyskać pełną implementację za pomocą tej metody. –