1) Pinch Gesture:
@IBOutlet var view_pinch: UIView!
override func viewDidLoad() {
super.viewDidLoad()
let pinch_view : UIPinchGestureRecognizer = UIPinchGestureRecognizer(target: self, action: #selector(pinch_gesture(_:)))
self.view_pinch.addGestureRecognizer(pinch_view)
self.view_pinch.isUserInteractionEnabled = true
// Do any additional setup after loading the view.
}
func pinch_gesture(_ pinchGesture : UIPinchGestureRecognizer) {
self.view_pinch.transform = self.view_pinch.transform.scaledBy(x: pinchGesture.scale, y: pinchGesture.scale)
pinchGesture.scale = 1.0
}
2) Swipe Gesture:
@IBOutlet var view_swipe: UIView!
override func viewDidLoad() {
super.viewDidLoad()
let left_swipe = UISwipeGestureRecognizer(target: self, action: #selector(slide_Left_gesture(_:)))
left_swipe.direction = UISwipeGestureRecognizerDirection.left
view_swipe.addGestureRecognizer(left_swipe)
let right_swipe = UISwipeGestureRecognizer(target: self, action: #selector(slide_right_gesture(_:)))
right_swipe.direction = UISwipeGestureRecognizerDirection.right
view_swipe.addGestureRecognizer(right_swipe)
// Do any additional setup after loading the view.
}
func slide_Left_gesture(_ swipegesture : UISwipeGestureRecognizer) {
self.view_swipe.backgroundColor = UIColor.blue
}
func slide_right_gesture(_ swipegesture : UISwipeGestureRecognizer) {
self.view_swipe.backgroundColor = UIColor.green
}
3) Tap Gesture:
@IBOutlet var view_gesture: UIView!
override func viewDidLoad() {
super.viewDidLoad()
let single_tap_ges = UITapGestureRecognizer(target: self, action: #selector(singletapGesture(_:)))
view_gesture.addGestureRecognizer(single_tap_ges)
let double_tap_ges = UITapGestureRecognizer(target: self, action: #selector(doubletapGesture(_:)))
double_tap_ges.numberOfTapsRequired = 2
view_gesture.addGestureRecognizer(double_tap_ges)
single_tap_ges.require(toFail: double_tap_ges)
// Do any additional setup after loading the view, typically from a nib.
}
func doubletapGesture(_ tapgestureRecognizer : UITapGestureRecognizer) {
self.view_gesture.frame = CGRect(x: self.view_gesture.frame.origin.x, y: self.view_gesture.frame.origin.y, width: 250, height: 250)
self.view_gesture.backgroundColor = UIColor.blue
}
func singletapGesture(_ tapgestureRecognizer : UITapGestureRecognizer) {
if self.view_gesture.backgroundColor == UIColor.black {
self.view_gesture.backgroundColor = UIColor.brown
self.view_gesture.frame = CGRect(x: self.view_gesture.frame.origin.x, y: self.view_gesture.frame.origin.y, width: 100, height: 100)
}
else {
self.view_gesture.backgroundColor = UIColor.black
self.view_gesture.frame = CGRect(x: self.view_gesture.frame.origin.x, y: self.view_gesture.frame.origin.y, width: 50, height: 50)
}
}
4) Pan Gesture:
@IBOutlet var view_pan: UIView!
override func viewDidLoad() {
super.viewDidLoad()
let pan_view = UIPanGestureRecognizer(target: self, action: #selector(pan_Gesture(_:)))
view_pan.addGestureRecognizer(pan_view)
// Do any additional setup after loading the view.
}
func pan_Gesture(_ panGesture : UIPanGestureRecognizer) {
let panTouch : CGPoint = panGesture.location(in: self.view)
self.view_pan.center = panTouch
}
5) Rotation Gesture:
@IBOutlet var view_rotation: UIView!
override func viewDidLoad() {
super.viewDidLoad()
let rotate_view : UIRotationGestureRecognizer = UIRotationGestureRecognizer(target: self, action: #selector(rotation_Gesture(_:)))
self.view_rotation.addGestureRecognizer(rotate_view)
// Do any additional setup after loading the view.
}
func rotation_Gesture(_ rotationGesture : UIRotationGestureRecognizer) {
self.view_rotation.transform = self.view_rotation.transform.rotated(by: rotationGesture.rotation)
rotationGesture.rotation = 0.0
}
=> If user can create multiple gesture, may be this code is useful. Like,
@IBOutlet var view_mix: UIView!
override func viewDidLoad() {
super.viewDidLoad()
let rotate_view : UIRotationGestureRecognizer = UIRotationGestureRecognizer(target: self, action: #selector(rotation_Gesture(_:)))
self.view_mix.addGestureRecognizer(rotate_view)
let pinch_view : UIPinchGestureRecognizer = UIPinchGestureRecognizer(target: self, action: #selector(pinch_gesture(_:)))
self.view_mix.addGestureRecognizer(pinch_view)
let left_swipe = UISwipeGestureRecognizer(target: self, action: #selector(swipe_Gesture(_:)))
let right_swipe = UISwipeGestureRecognizer(target: self, action: #selector(swipe_Gesture(_:)))
let up_swipe = UISwipeGestureRecognizer(target: self, action: #selector(swipe_Gesture(_:)))
let down_swipe = UISwipeGestureRecognizer(target: self, action: #selector(swipe_Gesture(_:)))
left_swipe.direction = UISwipeGestureRecognizerDirection.left
right_swipe.direction = UISwipeGestureRecognizerDirection.right
up_swipe.direction = UISwipeGestureRecognizerDirection.up
down_swipe.direction = UISwipeGestureRecognizerDirection.down
self.view_mix.addGestureRecognizer(left_swipe)
self.view_mix.addGestureRecognizer(right_swipe)
self.view_mix.addGestureRecognizer(up_swipe)
self.view_mix.addGestureRecognizer(down_swipe)
// Do any additional setup after loading the view.
}
func rotation_Gesture(_ rotationGesture : UIRotationGestureRecognizer) {
self.view_mix.transform = self.view_mix.transform.rotated(by: rotationGesture.rotation)
rotationGesture.rotation = 0.0
}
func pinch_gesture(_ pinchGesture : UIPinchGestureRecognizer) {
self.view_mix.transform = self.view_mix.transform.scaledBy(x: pinchGesture.scale, y: pinchGesture.scale);
pinchGesture.scale = 1.0;
}
func swipe_Gesture(_ swipeGesture : UISwipeGestureRecognizer) {
if (swipeGesture.direction == .left) {
self.view_mix.backgroundColor = UIColor.blue
}
if (swipeGesture.direction == .right) {
self.view_mix.backgroundColor = UIColor.brown
}
if (swipeGesture.direction == .up) {
self.view_mix.backgroundColor = UIColor.cyan
}
if (swipeGesture.direction == .down) {
self.view_mix.backgroundColor = UIColor.green
}
}
Thank you...
No comments:
Post a Comment