我想在UIScrollView中进行分页/滚动更快,所以当用户左手伸出时,无论加速的速度如何,下一页都会比平常更快。
提前致谢
答案 0 :(得分:10)
调整UIScrollView的decelerationRate
。
答案 1 :(得分:4)
如果我正确理解您的问题,您已将ScrollView设置为对齐页面(pagingEnabled = YES)。当用户抬起手指时,您希望它比目前更快地捕捉到最近的页面?
如果那是你想要完成的事情,我建议这样做:
scrollViewDidEndDragging:willDecelerate:
。您还需要覆盖方法scrollViewWillEndDragging:withVelocity:targetContentOffset:
,以便获得拖动的速度。scrollViewDidEndDragging:willDecelerate:
中,您可以计算拖动的方向(使用从其他方法获得的速度)和偏移到最近的页面。从那里,它就像使用具有所需持续时间的UIView
动画块设置scrollview的contentOffset一样简单。例如: [UIView animateWithDuration:.25f animations:^{
scrollview.contentOffset = calculatedCGPoint;
}];
这应该会给你带来理想的效果。