🦋

SwiftUI: TimelineViewでキーフレームアニメーション(猫走)

2022/12/08に公開約500字

TimelineView(.periodic(from:by:)) { _ in }を使うことで無限ループのキーフレームアニメーションを実装することができます。

struct ContentView: View {
    var body: some View {
        TimelineView(.periodic(from: .now, by: 0.2)) { timeline in
            let n = (Calendar.current.component(.nanosecond, from: timeline.date) / 200_000_000)
            Image("cat-\(n)")
                .frame(width: 56, height: 36)
        }
        .drawingGroup()
    }
}


RunCatの猫のサンプル

Discussion

ログインするとコメントできます