我有一个分页 ScrollView ,很像 Apple's Page Control example project我已将其改编成水平选择器。我真的很喜欢每次轻弹手势都能滚动浏览多个页面,而不是一次滚动一个页面,就像 UIPickerViews 的工作方式一样。寻找有关如何解决此问题的一些指导。谢谢!
最佳答案
首先最好 Source Code
可能无论在其中设置这些数字,您在其手中设置 contentOffset
都不会给人留下深刻的印象。所以它只是继续设置它认为应该是下一个瞬间的 contentOffset - 而不验证 contentOffset 是否同时发生了变化。
我将继承 UIScrollView
并将其神奇之处放在 setContentOffset
方法中。根据我的经验,所有内容偏移量更改都通过该方法,甚至是内部滚动引起的内容偏移量更改。只需在某个时刻执行 [super setContentOffset
:..] 将消息传递到真正的 UIScrollView
。
也许如果你把变速 Action 放在那里,效果会更好。您至少可以检测 contentOffset
的 3000-off 设置,并在传递消息之前修复它。如果您还要重写 contentOffset 方法,您可以尝试看看是否可以制作虚拟的无限内容大小,并将其减小到“幕后”的实际比例。
关于ios - Paging UIScrollView - 如何一次翻动多个页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15491286/