6

有没有办法改变滚动 UIScrollView 时 scrollRectToVisible 动画的速度?

4

2 回答 2

15

只需将动画参数设置为 NO,然后使用 UIView 的动画类方法执行您自己的动画。

[UIView animateWithDuration:1.0f delay:0.0f options:UIViewAnimationOptionCurveEaseOut animations:^{
    [scrollView scrollRectToVisible:viewFrame animated:NO];
} completion:nil];
于 2012-11-28T16:54:02.143 回答
6

不,不是使用公共方法。持续时间固定为 0.3 秒。

一个私有的、未记录的 API可以更改持续时间:

@interface UIScrollView(UIScrollViewInternal)
-(void)_setContentOffsetAnimationDuration:(NSTimeInterval)duration;
@end

但作为所有未记录的 API,使用它会导致 AppStore 拒绝。

于 2010-11-04T21:22:15.750 回答