如何从两个UIScrollView(super-sub)中检测滚动事件

问题描述:

有两个滚动视图。一个是另一个的superView。如何从两个UIScrollView(super-sub)中检测滚动事件

我发现有时会超级滚动视图被跟踪,有时当我在子滚动视图上拖动不同时间时会跟踪子滚动视图。

尤其是,在子滚动视图的哪个位置将触发反弹事件的结束位置,大多数情况下都会跟踪超滚动视图。

那么(ios)系统如何决定跟踪哪个滚动视图? 以及如果我想拖动子滚动视图的位置,子滚动视图被跟踪以响应滚动事件,如果我拖动子滚动视图的区域,超滚动视图响应滚动事件。

+0

你覆盖'ScrollView'的'scrollViewDidScroll'方法? –

+0

问题是你作为一个开发人员如何检测这个问题或iOS(系统)如何决定滚动哪个滚动视图? – Mattias

它不建议具有嵌套滚动视图。但是,如果您必须拥有它们,您可以通过禁用两个UIScrollView上的滚动并在容器UIView上实现UIPanGestureRecognizer来实现。然后,您可以通过编程方式更改两个滚动视图的偏移量,但是您需要。

最后,我通过使用“underView的Gesture.requireGestureRecognizerToFail(upView的手势)”解决了这个问题