Ich habe eine vertikal scrollende UIScrollView
. Ich möchte auch horizontale Schwenks darauf behandeln und gleichzeitig das standardmäßige vertikale Scroll-Verhalten zulassen. Ich habe eine transparente UIView
über die Bildlaufansicht gelegt und eine Schwenkgeste Erkenner hinzugefügt. Auf diese Weise kann ich die Pfannen gut erhalten, aber dann erhält die Scroll-Ansicht keine Gesten.Pan Gesten über eine UIScrollView abbrechen bricht Scrollen
Ich habe folgende UIPanGestureRecognizerDelegate
Methoden implementiert, in der Hoffnung meine Gestenerkenner auf Horizontalschwenks nur zu begrenzen, aber das half auch nicht:
- (BOOL)gestureRecognizerShouldBegin:(UIPanGestureRecognizer *)gestureRecognizer
{
// Only accept horizontal pans here.
// Leave the vertical pans for scrolling the content.
CGPoint translation = [gestureRecognizer translationInView:self.view];
BOOL isHorizontalPan = (fabsf(translation.x) > fabsf(translation.y));
return isHorizontalPan;
}
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer
{
return (otherGestureRecognizer == _scrollView.panGestureRecognizer);
}
Haben Sie versucht, '[panGesture setCancelsTouchesInView: NO];'? Wenn Sie einfach YES in 'shouldRecognizeSimultelyWithGestureRecognizer' zurückgeben, können Sie auch herausfinden, wo das Problem liegt. –
Habe es einfach ausprobiert, kein Unterschied. – Macondo2Seattle