UIScrollView滚动速度

4

有没有办法减慢UIScrollView的滚动速度?我尝试使用 scrollRectToVisible: animated: NO 来实现这一点(将动画设置为NO),但似乎不是正确的方法。


可能是以下问题的重复:https://dev59.com/ykvSa4cB1Zd3GeqPcSxk https://dev59.com/6nA65IYBdhLWcg3wogAb - Krishnabhadra
1
不好意思,这是我的第一篇帖子!我的帖子是关于滚动速度的! - leCon
2个回答

8
您可以使用简单的UIView动画来实现这一点。
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:2];
[scrollview scrollRectToVisible:rect animated:NO];
[UIView commitAnimations];

我知道的唯一方法是这样的。

iOS 4的方式(这在仍在运行3.x的iPhone上不起作用):

[UIView animateWithDuration:2 animations:^(void){
    [scrollview scrollRectToVisible:rect animated:NO];
}];

这取决于...新功能在仍在运行3.x操作系统的设备上无法工作,因此如果您想支持所有iOS设备,则必须使用它们。但是我已经将“新”方法添加到我的答案中。 - Bastian
不,巴斯蒂安是绝对正确的。你只需要将他的示例适应到你的代码中即可。 - Steven Kramer
我之前使用了这个代码:[scrollViewPaging scrollRectToVisible: currentFrame animated: no],现在我该如何修改它? - leCon
我刚在我的代码中尝试了一下,它不会自动滚动以使矩形可见...你必须将矩形的原点放进去。 - Bastian
谢谢,这只在我当前框架(我的scrollView)之外滚动时起作用,当我滚动scrollView时,此代码无效。 - leCon
显示剩余2条评论

7

我知道这并不完全是你所要求的,但它可以帮助你使用UIScrollView属性设置减速率。

@property(nonatomic) float decelerationRate

谢谢Damien的回复,我会调查一下是否可以使用它。 - leCon

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接