๐Ÿ“ฆAnimation

๐Ÿ‘‰ Sec. 5: Compose Animations for Complex Effects - Step 3.

extension Animation {
    /// `Animation.ripple()`
    /// - Returns: `Animation`
    static func ripple() -> Animation {
        Animation
            /// โญ๏ธ a reduced damping fraction makes the views hop.
            .spring(dampingFraction: 0.5)
            /// โญ๏ธ speed up the animation, to shorten the time
            ///    it takes to move to its new position.
            .speed(2)
            /// โญ๏ธ add a delay to each animation based on
            ///    the view's `index` on the graph.
            .delay(0.03 * Double(index))
    }
}

MyView().animation(.ripple())

Last updated