How to replace deprecated .animation() in SwiftUI?

You need tell Xcode what exactly should be animated! With given a variable that conform to Equatable protocol. That could be State or Binding or any other wrapper that allow you to update the value of it.


struct ContentView: View {
    @State private var offset: CGFloat = 200.0
    var body: some View {
        Image(systemName: "ant")
            .font(Font.system(size: 100.0))
            .offset(y: offset)
            .shadow(radius: 10.0)
            .onTapGesture { offset -= 100.0 }
            .animation(Animation.easeInOut(duration: 1.0), value: offset)


enter image description here

Leave a Comment