【问题标题】:Detacting Pinch and Rotation gestures simultaneously同时检测捏合和旋转手势
【发布时间】:2015-06-10 07:56:08
【问题描述】:

我已经成功实现了允许用户使用 UIGuestureRecognizers 放大和旋转视图的手势。但是,用户不能同时做两个手势(即同时旋转和缩放)。我该怎么做呢?下面是我添加手势的方法

var rotateRecognizer = UIRotationGestureRecognizer(target: self, action: "handleRotate:")
var pinchRecognizer = UIPinchGestureRecognizer(target: self, action: "handlePinch:")

testV.addGestureRecognizer(rotateRecognizer)
testV.addGestureRecognizer(pinchRecognizer)

【问题讨论】:

标签: swift uigesturerecognizer


【解决方案1】:

在 swift 3 中,委托方法名称是:

func gestureRecognizer(_ gestureRecognizer: UIGestureRecognizer, shouldRecognizeSimultaneouslyWith otherGestureRecognizer: UIGestureRecognizer) -> Bool { 
        return true
    }

您还需要为手势设置委托:

rotateRecognizer.delegate = self
pinchRecognizer.delegate = self

【讨论】:

    【解决方案2】:

    刚刚添加了这个,它就可以工作了:

    func gestureRecognizer(UIGestureRecognizer,
            shouldRecognizeSimultaneouslyWithGestureRecognizer:UIGestureRecognizer) -> Bool {
                return true
        }
    

    【讨论】:

      【解决方案3】:

      让 rotateGesture = UIRotationGestureRecognizer(target: self, action: #selector(self.rotateGesture))

      self.imageView.addGestureRecognizer(rotateGesture)

      让 pinchGesture = UIPinchGestureRecognizer(target: self, action:#selector(self.pinchGesture)) self.imageView.addGestureRecognizer(pinchGesture)

      func rotateGesture(sender: UIRotationGestureRecognizer){
          sender.view?.transform = (sender.view?.transform)!.rotated(by: sender.rotation)
          sender.rotation = 0
          print("rotate gesture")
      }
      func pinchGesture(sender: UIPinchGestureRecognizer){
          sender.view?.transform = (sender.view?.transform)!.scaledBy(x: sender.scale, y: sender.scale)
          sender.scale = 1
          print("pinch gesture")
      }
      

      【讨论】:

        猜你喜欢
        • 2019-06-17
        • 1970-01-01
        • 1970-01-01
        • 2012-08-13
        • 1970-01-01
        • 2012-12-08
        • 2011-12-27
        • 2016-10-24
        • 1970-01-01
        相关资源
        最近更新 更多