Вот мой код. Цель состоит в том, чтобы непрерывно вращать UIImageView с именем swirls [l]. Однако между каждым началом/окончанием вращения существует небольшая пауза. Я прошел через каждый учебник по анимации, но не могу понять, что это за ошибка?Быстрое непрерывное вращение Анимация не такая непрерывная
let fullRotation = CGFloat(M_PI * 2)
let duration = 2.0
let delay = 0.0
let options = UIViewKeyframeAnimationOptions.Repeat | UIViewKeyframeAnimationOptions.CalculationModeLinear
UIView.animateKeyframesWithDuration(duration, delay: delay, options: options, animations: {
UIView.addKeyframeWithRelativeStartTime(0, relativeDuration: 1/3, animations: {
swirls[l].transform = CGAffineTransformMakeRotation(1/3 * fullRotation)
})
UIView.addKeyframeWithRelativeStartTime(1/3, relativeDuration: 1/3, animations: {
swirls[l].transform = CGAffineTransformMakeRotation(2/3 * fullRotation)
})
UIView.addKeyframeWithRelativeStartTime(2/3, relativeDuration: 1/3, animations: {
swirls[l].transform = CGAffineTransformMakeRotation(3/3 * fullRotation)
})
}, completion: {finished in
})
EDIT: Я вижу, что это было предложено, что предыдущее решение доступно, но она просто не работает для непрерывного непрерывного вращения. Единственный трюк, который работал для меня, - это тот ответ, который я выбрал ниже. Благодаря
Возможный дубликат [Создайте непрерывно вращающийся квадрат на экране с помощью animateKeyframesWithDuration] (http://stackoverflow.com/questions/26665124/create-a-continuously-rotating-square-on-the-screen-using-animatekeyframeswithdu) –