Updated for Xcode 12.0
When you create any animation – implicitly, explicitly, or with bindings – you can attach modifiers to that animation to adjust the way it works. For example, if you want an animation to start after a certain number of seconds you should use the delay()
modifier.
As an example, this creates a red rectangle that, when tapped, will rotate by 360 degrees using a two-second animation with a one-second delay:
struct ContentView: View {
@State var rotation = 0.0
var body: some View {
Rectangle()
.fill(Color.red)
.frame(width: 200, height: 200)
.rotationEffect(.degrees(rotation))
.animation(Animation.easeInOut(duration: 3).delay(1))
.onTapGesture {
self.rotation += 360
}
}
}
SPONSORED Would you describe yourself as knowledgeable, but struggling when you have to come up with your own code? Fernando Olivares has a new book containing iOS rules you can immediately apply to your coding habits to see dramatic improvements, while also teaching applied programming fundamentals seen in refactored code from published apps.
Sponsor Hacking with Swift and reach the world's largest Swift community!
Link copied to your pasteboard.