2016-12-16 8 views
1

После опроса с помощью UIViewPropertyAnimator, я обнаружил, что .isReversed просто воспроизводит анимацию назад, как фильм в обратном порядке. Можно ли применить «упругость» к обратной анимации посредством пользовательского параметра Cubic Timing, который применим только к анимации, если он отменен?Может ли UISpringTimingParameters иметь обратный эффект пружины?

ответ

1

Если вы хотите, чтобы изменить анимацию и вернуться с пружинным эффектом, вы можете просто использовать следующий фрагмент кода:

// prepare new timing parameters with the desired springiness 
let newTimingParameters 
    = UISpringTimingParameters(dampingRatio: 0.5, initialVelocity: CGVector(dx: 2, dy: 0)) 

// pause the animator 
propertyAnimator.pauseAnimation() 

// reverse it 
propertyAnimator.isReversed = true 

// and restart it using new timing parameters with springiness 
propertyAnimator.continueAnimation(withTimingParameters: newTimingParameters, durationFactor: propertyAnimator.fractionComplete) 
Смежные вопросы