我将UIPinchGestureRecognizer
添加到显示图像的滚动视图中。
在紧要关头,我提出一个新的观点。
var pinch = UIPinchGestureRecognizer(target: self, action: "showFullScreen:")
self.scrollView.addGestureRecognizer(pinch)
showFullScreen
函数:func showFullScreen(sender:UITapGestureRecognizer) {
presentViewController(photoBro, animated: true, completion: nil)
}
但当我在scrollView上按下时,
showFullScreen
会被调用两次,因此会出现以下错误:由于意外异常“NSInvalidArgumentException”而终止应用程序,原因:“应用程序试图以模式显示活动控制器
我正在寻找解决方案,他们建议删除pinchGesture,但我想保留gestureerecognizer,这样用户仍然可以点击进入全屏。
我可以做些什么来确保
showFullScreen
只在一次按压时调用一次? 最佳答案
试试这个:
func showFullScreen(sender:UITapGestureRecognizer) {
if(sender.state == UIGestureRecognizerState.Ended) {
presentViewController(photoBro, animated: true, completion: nil)
}
}
关于ios - UIPinchGestureRecognizer触发两次,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30356889/