2011-06-15 47 views
2

问题滚动有点怪异,但是这就是我需要的;)预防的UIScrollView从停止当触摸发生

通常,当一个UIScrollView正在滚动,如果触摸视图,它会立即停止,但这是我想改变的行为。

我已经子类UITableView并重写触摸*方法,但是当表滚动时没有触摸*事件被调用。正如我在Apple文档中读到的,UIScrollView(它是UITableView的父类)不会转发这些事件。

我想要的是检测该触摸(这将停止在普通场景中的滚动),但保持UIScrollView滚动。

因此,停止滚动,我想有一个将被调用的方法。

回答

7

scrollViewDidEndDragging:willDecelerate:时,在表视图上方添加一个透明视图,其中userInteractionEnabled截取触摸。然后在scrollViewDidEndDecelerating:上删除它以恢复与表视图的正常交互。连接覆盖层上的触摸处理程序以获得回调。

+0

感谢您的回答。创造性的解决方案:)。我会尝试 – HyLian 2011-06-15 20:40:02

+0

杰出的解决方案。赞赏 – HyLian 2011-06-15 21:37:45

+0

伟大的问题和解决方案。谢谢你们俩。 – 2011-06-15 21:42:43