Desarrollo Mobile
> Swift Avanzado
- Implementación de un Pinch Gesture.
- Xcode 11
Implementar el PinchGestureRecognizer
.
Al igual que el Ejemplo-01.
1.- Crear un nuevo proyecto en Xcode con swift como lenguaje y Storyboard.
2.- Agregar un UIImageView
al Storyboard y conectarlo con el ViewController
, crear su IBOutlet correspondiente.
3.- Arrastrar un Gesture de tipo PanGesture
al UIImageview
. Este Gesture se puede encontrar en el Library.
4.- Crear una función de tipo @IBAction
con un sender
de tipo PanGestureRecognizer
.
Solución
La función que va conectada con el Gesture debe tener el parámetro de sender igual al gesture, es decir, si es un Pinch gesture, el parámetro debe ser UIPinchGestureRecognizer.
@IBAction func pinch(recognizer: UIPinchGestureRecognizer) {
}
Obtendremos la escala mediante el recognizer de la función:
let scale = recognizer.scale
Mediante el CGAffineTransform crearemos una escala o cambio de tamaño. Luego este nuevo tamaño lo asginaremos al View en cuestión para modificarlo.
@IBAction func pinch(recognizer: UIPinchGestureRecognizer) {
let scale = recognizer.scale
let transform = CGAffineTransform(scaleX: scale, y: scale)
self.imageView.transform = transform
//recognizer.scale = 1
}