SwiftUI animation example
SwiftUI Animated Icons: Symbol Effects in Action
iOS 17 added .symbolEffect for bounce, pulse and variable color animations on SF Symbols. These three icons show the same kinds of motion drawn from scratch, so they work anywhere: the bell swings on a damped spring, the Wi-Fi arcs light up in sequence, and the checkmark draws itself inside a circle.
- 4.4 KB file
- 3 live inputs
- SwiftUI runtime
How this symbol effects works
- The bell's angle is a damped oscillation started by a tap, with the clapper lagging behind the body.
- Wi-Fi arcs light up one after another, the variable-color effect, and loop while active.
- The checkmark is stroked progressively; each icon fires "trigger" when tapped.
Add it to your SwiftUI app
Install ExodeUI (Swift Package), download the file below, and paste this. The code updates as you customize. Other runtimes are in the other tabs.
import SwiftUI
import ExodeUI
// Add swiftui-symbol-animation.exode to your app target (download it below).
struct SwiftuiSymbolAnimationView: View {
@StateObject private var controller = ExodeUIController()
private let json = (try? String(contentsOf: Bundle.main.url(forResource: "swiftui-symbol-animation", withExtension: "exode")!)) ?? "{}"
var body: some View {
ExodeUICanvas(
artboardJson: json,
fit: "Layout",
controller: controller,
onReady: { },
onTrigger: { name, _ in
// fires: 'trigger'
}
)
.frame(height: 400)
}
}Inputs
| Input | Type | Default | Range |
|---|---|---|---|
accent | Text | #0a84ff | hex colour |
ink | Text | #f5f5f7 | hex colour |
bg | Text | #0c0c0f | hex colour |
Events: trigger
More SwiftUI animations
Activity Rings LoaderThree concentric arcs chasing each other like Activity rings, closing into full rings with a check when done.Shimmer Reveal TextA headline whose words rise and focus in one by one, with a periodic shimmer across the gradient text.Hold to Confirm ButtonA press-and-hold button: a fill runs while held, drains on early release and confirms when full.Context Menu PopLong-press a card to lift it, dim the background and spring an iOS-style context menu open beside it.Mesh Gradient BackgroundA living mesh-style gradient of drifting color points that bend toward your touch.Tilt Parallax PosterA poster card that tilts toward the pointer while its layers separate in depth under a moving glare.
The same idea in other frameworks: React like heart icon · Flutter morphing icons · JavaScript success checkmark