Ios 如何在UIScrollView中加速滚动?
我想让UIScrollView中的分页/滚动速度更快,这样当用户离开手指时,无论加速的速度如何,下一页都会比正常速度更快。调整UIScrollView的Ios 如何在UIScrollView中加速滚动?,ios,objective-c,uiscrollview,scroll,paging,Ios,Objective C,Uiscrollview,Scroll,Paging,我想让UIScrollView中的分页/滚动速度更快,这样当用户离开手指时,无论加速的速度如何,下一页都会比正常速度更快。调整UIScrollView的减速率 更多阅读:如果我正确理解了您的问题,您已经将ScrollView设置为捕捉到页面(PaginEnabled=YES)。当用户抬起手指时,您希望它比当前更快地捕捉到最近的页面吗 如果这就是你想要实现的,我建议你: 禁用PaginEnabled(PaginEnabled=否)。我们自己去做 将某些对象(可能是ViewController)设
减速率
更多阅读:如果我正确理解了您的问题,您已经将ScrollView设置为捕捉到页面(PaginEnabled=YES)。当用户抬起手指时,您希望它比当前更快地捕捉到最近的页面吗
如果这就是你想要实现的,我建议你:
- 禁用PaginEnabled(PaginEnabled=否)。我们自己去做
- 将某些对象(可能是ViewController)设置为滚动视图的代理李>
- 在Scrollview委托中,重写方法
ScrollViewDiEndDraging:willDecreate:
。您还需要覆盖方法ScrollViewWillendDraging:withVelocity:targetContentOffset:
,以便获得拖动的速度
- 在ScrollViewDiEndDraging:WillDecreate:
中,您可以计算拖动方向(使用从另一种方法获得的速度)和到最近页面的偏移量。从这里开始,只需使用UIView
动画块设置scrollview的contentOffset和所需的持续时间即可。例如:
[UIView animateWithDuration:.25f动画:^{
scrollview.contentOffset=calculatedCGPoint;
}];代码>
这应该会给你想要的效果。我尝试了减速率
属性,但没有任何更改。UIScrollViewDecelerationRateNormal
,UIScrollViewDecelerationRateFast