63 votes

Comment activer le zoom dans UIScrollView

Comment activer l'effet de zoom dans UIScrollView?

209voto

Yar Points 25421

La réponse est ici:

Le défilement de l'affichage gère également le zoom et le recadrage de contenu. En tant qu'utilisateur fait une pincée ou geste d'écarter deux doigts, le défilement de l'affichage permet de régler le décalage et l'échelle du contenu. Lorsque l' le geste se termine, l'objet de la gestion de la l'affichage du contenu doit être mise à jour les sous-vues du contenu, si nécessaire. (Notez que le geste peut fin et un doigt qui pourrait encore être en bas.) Alors que le le geste est en cours, le défilement ne pas envoyer de suivi des appels à la sous-vue.

Le UIScrollView classe peut avoir un délégué que doit adopter l' UIScrollViewDelegate protocole. Pour zoom et de panoramique de travail, la délégué doit mettre en œuvre à la fois viewForZoomingInScrollView: et scrollViewDidEndZooming:withView:atScale:; de plus, le maximum (maximumZoomScale) et le minimum ( minimumZoomScale) de l'échelle de zoom doit être différentes.

Donc:

  1. Vous avez besoin d'un délégué qui implémente UIScrollViewDelegate et delegate sur votre UIScrollView exemple
  2. Sur votre délégué, vous avez à mettre en œuvre une méthode: viewForZoomingInScrollView: (qui doit retourner le contenu de la vue qui vous intéresse le zoom). Vous pouvez également implémenter scrollViewDidEndZooming:withView:atScale: en option.
  3. Sur votre UIScrollView de l'instance, vous devez définir l' minimumZoomScale et de la maximumZoomScale différente (ils sont 1.0 par défaut).

Remarque: La chose intéressante à ce sujet est que si vous voulez briser le zoom. Suffit-il de retour nil dans la viewForZooming... méthode? Il ne pause le zoom, mais certains gestes seront foiré (deux doigts). Par conséquent, pour briser le zoom, vous devez régler le min et max de l'échelle de zoom à 1.0.

5voto

Jigar Joshi Points 116533

Regardez cette vidéo

Description de la vidéo:

  • Ajouter UIScrollViewDelegate délégué
  • Prendre un UIScrollView
  • Prenez un UIImageView qui va être ajouté sur Scrollview
  • Placez la vue de défilement dans la fenêtre principale
  • Connecter les délégués
  • Configurer imageView
  • Définir l’échelle de zoom max / min [chose essentielle ici]
  • Implémenter une méthode déléguée pour retourner la vue

0voto

user1426865 Points 6

Je ne pense pas que cela fonctionne pour iOS 5.0 et Xcode 4.3+ Je cherche la même chose ici, j'ai trouvé ceci pour les images, mais cela peut vous aider.

http://www.youtube.com/watch?v=Ptm4St6ySEI

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X