在SwiftUI中,您可以非常方便地制作重复动画,反转动画,甚至可以指定动画的播放次数。
示例代码:
struct ContentView : View { @State var angle: Double = 0 //图像视图的旋转角度 var animation: Animation { Animation.spring() //设置动画的时间曲线为弹性样式 .repeatForever() //设置动画的播放为无限循环模式 // .repeatForever(autoreverses: false) //使动画来回反弹 // .repeatCount(3) //重复次数 } var body: some View { VStack{ Image("logo") .rotationEffect(Angle.init(degrees: angle)) //按照属性的大小,对图像视图进行旋转操作 .animation(animation) Divider().fixedSize() Button(action: { self.angle += 45 }) { Text("Repeat Forever Effect") } } } }