PanGensture的惯性滑动

672 阅读1分钟

第一步:惯性动画的判断

利用pan手势的速度来确认是否可以开始执行惯性滑动


CGPoint velocity = [recognize velocityInView:recognize.view];
BOOL isTriggerDown = velocity.y > 500;  // 向下滑动,可以进入下一个阶段
BOOL isTriggerUp = velocity.y < -500;  // 向上滑动,可以进入下一个阶段

第二步:执行惯性动画

关键是使用 UIViewAnimationOptionBeginFromCurrentState

[UIView animateWithDuration:0.2 delay:0 options:UIViewAnimationOptionBeginFromCurrentState animations:^{
    // animation
} completion:^(BOOL finished) {

}];