【发布时间】:2012-12-12 02:34:03
【问题描述】:
我在谷歌上做了足够多的事情,并且在发布之前我确实在 stackoverflow 中检查了这些帖子 (Finding the direction of scrolling in a UIScrollView?)。我在 iPhone 应用程序中有动态数量的照片,通过UIScrollView 显示。在任何时候,滚动视图中都只显示了 3 张照片。当我总共有 4 张照片时:
第一张照片:在偏移量 0.0 处显示
第二张照片:显示在偏移 320.0
第三张照片:显示在偏移 640.0
现在,当用户滚动到第四张照片时,滚动视图重置为 0.0 偏移量。如果用户试图滚动“超出”第 4 张照片,则滚动应仅在右侧停止(这样用户不会滚动“超出”)。但目前,用户“能够”滚动到最后一张照片之外;但是,我以编程方式检测到这一点并重置偏移量。但它看起来并不整洁,因为用户会暂时看到黑色背景。我想检测到用户已经开始在scrollViewWillBeginDragging 中“向右”滚动(记住,向“左”滚动,即到“上一张”照片是可以的),这样我就可以停止向右滚动。
我尝试了什么:
- 尝试使用
self.scrollView.panGestureRecognizer'stranslationInView不起作用,因为没有panGestureRecognizer实例首先返回(!), 虽然 UIScrollView API 声称如此。 - 虽然可以在
scrollViewDidEndDecelerating中检测到这一点 这不符合我的目的。
【问题讨论】:
标签: iphone ios cocoa-touch