2017-08-22 2 views
1

Je voudrais retourner la taille de l'image d'origine après avoir utilisé le geste de pincement pour zoomer ou dézoomer.Obtenir la taille d'image originale après UIPinchGestureRecognizer pincer dedans et dehors

Ce que j'ai trouvé la réponse similaire est

How to get original image when we zoom in and zoom out the image in ios,

il utilise ScrollView. Pas exactement ce dont j'ai besoin.

Voici mon code, c'est une réponse envoyée par le geste #selector

func respondToGesture(_ gesture: UIGestureRecognizer) -> Void { 

    if let pinch = gesture as? UIPinchGestureRecognizer { 

     if let img = pinch.view as? UIImageView { 

      img.transform = CGAffineTransform(scaleX: pinch.scale, y: pinch.scale) 

      if pinch.state == .ended 
      { 
       img.transform = CGAffineTransform(scaleX: (1/pinch.scale), y: (1/pinch.scale)) 
      } 
     } 
    } 
} 

l'espoir d'obtenir quelques suggestions !! Merci ~

+0

Essayez 'img.transform = CGAffineTransform.identity' après votre zoom –

+0

@MikeAlter, Merci mec, ça marche bien. – HungCLo

+0

Bienvenue, je pense que je devrais poster une réponse à partir de maintenant: D –

Répondre

1

Utilisez cette option pour réinitialiser la taille de l'image

yourImage.transform = CGAffineTransform.identity 

Hope this helps!

+0

Merci, je trouve aussi une solution alternative. L'échelle de transformation par défaut est 1, il suffit de définir CGAffineTransform (scaleX: 1, y: 1) à mon imageView. – HungCLo