Paging UIScrollView - 如何一次轻弹多个页面
Posted
技术标签:
【中文标题】Paging UIScrollView - 如何一次轻弹多个页面【英文标题】:Paging UIScrollView - How to flick multiple pages at a time 【发布时间】:2013-03-19 04:05:03 【问题描述】:我有一个类似于Apple's Page Control example project 的分页滚动视图,我已将其改编为水平选择器。我真的希望能够通过每个轻弹手势滚动多个页面,而不是一次一个,就像 UIPickerViews 的工作方式一样。寻找有关如何解决此问题的一些指导。谢谢!
【问题讨论】:
你能看看这位Capikaw先生github.com/nicklockwood/iCarousel 【参考方案1】:这里最好Source Code
可能是无论在那里设置这些数字,您将contentOffset
设置在它的手下并没有给人留下深刻的印象。所以它只是继续设置它认为应该是下一个瞬间的 contentOffset - 而不验证 contentOffset 在此期间是否发生了变化。
我将继承 UIScrollView
并将魔法放入 setContentOffset
方法中。根据我的经验,所有内容偏移更改都通过该方法,即使是内部滚动引起的内容偏移更改。只需在某个时候执行 [super setContentOffset
:..] 即可将消息传递给真正的 UIScrollView
。
也许如果你把你的换档动作放在那里它会更好。您至少可以检测到contentOffset
的 3000-off 设置,并在传递消息之前对其进行修复。如果您还要覆盖 contentOffset 方法,您可以尝试看看是否可以制作一个虚拟的无限内容大小,并“在后台”将其缩小到真实比例。
This is also helpful for you..!!!
【讨论】:
以上是关于Paging UIScrollView - 如何一次轻弹多个页面的主要内容,如果未能解决你的问题,请参考以下文章
UIScrollView 在分页时确定 scrollViewDidEndDragging 上的滚动方向
UIScrollView setContentOffset(分页)被触摸屏停止
XCode - UIScrollView 分页不显示子视图(自动布局?)