如何使UIScrollView以一定的速度自动滚动



我正在使用touchesBegind和touchesMoveed来跟踪用户的交互,因此我可以看到用户触摸屏幕的位置。我想做的是,当他们把手指移到屏幕的最后 20 个像素时,让 UIScrollView 滚动1 向下滚动。但是如何定义速度呢?当然,while语句会做得太快,而UIView动画会将其移动到某个位置,但只有一次。

您可以通过以下代码执行此操作:

[UIScrollView beginAnimations:@"scrollAnimation" context:nil];
[UIScrollView setAnimationDuration:REQUIRED_ANIMATION_DURATION];
[scroll setContentOffset:CGPointMake(REQUIRED_DISTANCE_X, REQUIRED_DISTANCE_Y)];
[UIScrollView commitAnimations];

只需将REQUIRED_ANIMATION_DURATION的值设置为您想要的任何时间间隔即可。较小的时间间隔意味着更快的速度。

最新更新