あなたはgestureRecognizer(_:shouldRequireFailureOfGestureRecognizer:
メソッドを使用して、必要なときにtrue
を返すことができるように、あなたのビューコントローラでUIGestureRecognizerDelegateプロトコルを実装する必要があります。あなたは、それぞれ、第1及び第2のパラメータを比較することで、あなたのパンジェスチャ認識装置とスクロールビューのピンチジェスチャー認識機能を制限述語を形成することができます
func gestureRecognizer(gestureRecognizer: UIGestureRecognizer, shouldRequireFailureOfGestureRecognizer otherGestureRecognizer: UIGestureRecognizer) -> Bool {
return gestureRecognizer == myPanGestureRecognizer && otherGestureRecognizer == scrollView.pinchGestureRecognizer
}
そのように、スクロールビューのジェスチャー認識装置に障害が発生するまで、後者が待っています状態.Recognized
に移行する前に詳細はApple Gesture Recognizer Programming Guideにあります。
self
にあなたのパンジェスチャー認識装置のデリゲートのプロパティを設定することを忘れないでください:
myPanGestureRecognizer.delegate = self
出典
2016-04-19 12:53:02
J2b
はあなたの助けをいただき、ありがとうございます。私はパンのデリゲートを設定し、スクロールビューのピンチをズームするためにfalseを返します。しかし、今私たちがピンチでなければ、パンは決してイベントを開始しません。私が逃したものは何か分かりますか? –
Mmmm ...私はそれを試しただけで、上のデリゲートプロトコルメソッドを追加しなくても、すべてがすぐに使えるようです。スクロールビューの 'minimumZoomScale'と' maximumZoomScale'を正しく設定してもよろしいですか? – J2b