我有一个显示大约 10 张图像的水平 UIScrollview。 我知道我们必须使用 scrollRectToVisible 方法以编程方式移动 ScrollView 。 但我正在寻找的是从 ScrollView 的开始到结束缓慢滚动 ScrollView (1 秒内 5 个像素)。
我看过一些页面,但我不明白如何在我的代码中集成以下代码:
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDelegate:self];
[UIView setAnimationDuration:(abs(rMid-pMid)*0.3)];
scrollMid.contentOffset = CGPointMake(rMid*320, 0);
[UIView commitAnimations];
最佳答案
你可以像这样使用NSTimer
- (void) viewDidLoad
{
if (scrollingTimer == nil)
{
scrollingTimer = [NSTimer scheduledTimerWithTimeInterval:(0.06)
target:self selector:@selector(autoscrollTimerFired) userInfo:nil repeats:YES];
}
}
- (void) autoscrollTimerFired
{
if (scrollPoint.y == 583) // at where you want to stop scroll
{
[scrollingTimer invalidate];
scrollingTimer = nil;
}
scrollPoint = CGPointMake(scrollPoint.x, scrollPoint.y + 1);
[self.scrollView setContentOffset:scrollPoint animated:NO];
}
希望对你有帮助...
关于ios - 如何以编程方式从头到尾缓慢地滚动 UIScrollView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6857975/