В настоящее время я нашел вариант использования, который требует от меня воспроизведения анимации с определенной точки на «временной шкале» анимации. Итак, предположим, что у нашей анимации 5 секунд, я бы хотел воспроизвести от 0,5 или 50%, что составляет 2,5 секунды, или 0,72 или 72%, что составляет 3,6 секунды.
На момент написания, Я не верю, что это поддерживается в Animation
, но, чтобы лучше объяснить, что я ищу, если вы, читатель, испытали Actioncript или Javascript (совсем недавно), вы могли использовать GSAP seek
(https://greensock.com/docs/v2/Core/Animation/seek () ), и это то, что я ищу.
Я поместил код ниже, чтобы показать типичную настройку Animation
в SwiftUI:
Circle()
.trim(
from: 0,
to: self.myState.animate ? 1.0 : 0.0
)
.stroke(
style: StrokeStyle(lineWidth: 12.0, lineCap: .round, lineJoin: .round)
)
.animation(
Animation
.linear(duration: self.myState.animate ? 5.0 : 0.0)
.repeatForever(autoreverses: false)
)
В документации Apple Animation нет ничего близкого к GSAP .seek()
(https://developer.apple.com/documentation/swiftui/animation), но мне интересно, может ли кто-нибудь еще знать способ обойти это, поскольку я, возможно, не смог найти.