0
我想将UITapGestureRecogniser添加到我为UIImagePickerController创建的叠加视图中。但是没有检测到水龙头。以下是我的代码:如何在ImagePickerController()中的叠加视图上识别TapGesture?
//Setting up image picker controller
let imagePicker = UIImagePickerController()
imagePicker.delegate = self
imagePicker.sourceType = .camera
imagePicker.showsCameraControls = false
//Setting up the tap gesture
let tapGesture = UITapGestureRecognizer(target: self, action: #selector(self.cropImageAroundTap(sender:)))
tapGesture.delegate = self
//Setting up overlay view
let overlayView = UIView.init(frame: self.view.frame)
overlayView.isOpaque = false
overlayView.isUserInteractionEnabled = true
overlayView.backgroundColor = UIColor.clear
overlayView.addGestureRecognizer(tapGesture)
imagePicker.cameraOverlayView = overlayView
self.present(imagePicker, animated: true, completion: nil)
如果我添加了手势识别器到imagePicker.view那么部分相机进行控制是检测水龙头,但不预览窗口。以下是我的功能检测水龙头:
func cropImageAroundTap(sender: UITapGestureRecognizer) {
if sender.state == .ended {
NSLog("hello")
}
}
有没有办法检测预览窗口上的点击?
尝试使用的子视图sender.view –
问题是选择器cropImageAroundTap甚至没有被调用。 –