在滚动UIScrollView时,有没有办法改变scrollRectToVisible动画的速度?
在滚动UIScrollView时,有没有办法改变scrollRectToVisible动画的速度?
只需将动画参数设置为NO,然后使用UIView的动画类方法执行自己的动画即可。
[UIView animateWithDuration:1.0f delay:0.0f options:UIViewAnimationOptionCurveEaseOut animations:^{
[scrollView scrollRectToVisible:viewFrame animated:NO];
} completion:nil];
@interface UIScrollView(UIScrollViewInternal)
-(void)_setContentOffsetAnimationDuration:(NSTimeInterval)duration;
@end
但是,像所有未记录的API一样,使用它将导致在AppStore中被拒绝。
[scrollView _setContentOffsetAnimationDuration:8.0]
并且它有效了。请注意,如果你像我一样正在使用NSTimer,动画持续时间必须大于定时器的间隔,否则它会变得不稳定。 - Moshe