Я пробовал связывать анимации с помощью Spring, но, к сожалению, в документах довольно неясно о связывании анимаций (https://github.com/MengTo/Spring).
Я также видел, что некоторые люди задавали тот же вопрос, но почему-то их ответы не сработали для меня. ( Spring Meng Для анимации цепочек? , https://github.com/MengTo/Spring/issues/123)
Я попытался использовать цепочку, как в примерах Spring:
func startAnimationSpringChain() {
self.springView.animation = "slideRight"
self.springView.animateNext {
self.springView.animation = "fadeOut"
self.springView.animate()
}
}
Здесь первая анимация работает, но вторая представляет собой комбинацию «fadeOut» и перевернутого проигрываемого «slideRight».
Затем я попытался использовать Обещания:
func startAnimationPromise() {
firstly {
self.firstAnimation()
}.done {
self.secondAnimation()
}
}
func firstAnimation () -> Promise<Void>{
return Promise { seal in
self.springView.animation = "SlideRight"
self.springView.animate()
seal.fulfill(())
}
}
func secondAnimation() -> Promise<Void>{
return Promise { seal in
self.springView.animation = "fadeOut"
self.springView.animate()
seal.fulfill(())
}
}
Это привело к быстрому воспроизведению только второй анимации "fadeOut".
Может кто-нибудь объяснить, пожалуйста, эти три функции:
animateNext { ... }
animateTo()
animateToNext { ... }
потому что мне довольно трудно понять, что именно они делают.
Спасибо за вашу помощь, я очень ценю это и рад всем советам относительно моего кода! :)
Лучшее