滚动视图内部视图上的UIPanGestureRecognizer仅在滚动视图放大时偶尔会起作用

时间:2010-10-26 22:00:21

标签: objective-c cocoa-touch uigesturerecognizer

我在UIScrollView内部的视图上有一个UIPanGestureRecognizer。它的功能是在平移时移动其父视图。这在滚动视图中以1x和2x缩放分辨率非常好地工作,但是进一步放大会导致它们经常失败 - 但并非总是如此。

还有一个长按&在同一视图上双击识别器,在放大时都可正常工作。在滚动视图上覆盖hitTest方法显示UIGesture视图实际上在放大时确实接收到触摸(假设这些其他识别器工作,这是预期的。)

我尝试了几种cancelContentTouches& amp;滚动视图中的其他属性没有成功。

有人有任何建议吗?

1 个答案:

答案 0 :(得分:0)

我尝试过的一种解决方法:让您的PanGesture查看滚动视图的兄弟姐妹,并通过UIScrollViewDelegate didScroll手动更新其位置/比例。但是,每当检查PanGesture视图时,您都必须考虑滚动视图的变换(例如获取位置信息)。

显然这并不理想 - 如果其他人还有更好的解决方案,我会很高兴听到它!