Contents

easeIn(duration:)

An animation with a specified duration that starts slowly and then increases speed towards the end of the movement.

Declaration

static func easeIn(duration: TimeInterval) -> Animation

Parameters

  • duration:

    The length of time, expressed in seconds, that the animation takes to complete.

Return Value

An ease-in animation with a specified duration.

Discussion

An easing animation provides motion with a natural feel by varying the acceleration and deceleration of the animation, which matches how things tend to move in reality. With an ease in animation, the motion starts slowly and increases its speed towards the end.

Use easeIn(duration:) when you want to specify the time it takes for the animation to complete. Otherwise, use easeIn to perform the animation for a default length of time.

The following code shows an example of animating the size changes of a Circle using an ease in animation with a duration of one second.

struct ContentView: View {
    @State private var scale = 0.5

    var body: some View {
        VStack {
            Circle()
                .scale(scale)
                .animation(.easeIn(duration: 1.0), value: scale)
            HStack {
                Button("+") { scale += 0.1 }
                Button("-") { scale -= 0.1 }
            }
        }
    }
}

See Also

Getting eased animations