我正在try 用旋转效果制作钟形图标的动画,但它只能单向地以指定的Angular 制作动画:
struct ContentView: View {
@State var alarmSet = false
var body: some View {
ZStack {
Color.black
VStack {
Image(systemName: "bell.fill")
.font(.system(size: 250))
.foregroundColor(.white)
.rotationEffect(.degrees(reminderSet ? 10 : 0), anchor: .top)
.animation(.interpolatingSpring(mass: 0.5, stiffness: 170, damping: 2.5, initialVelocity: 0), value: alarmSet)
Button(action: {
alarmSet.toggle()
}, label: {
Text(alarmSet ? "Alarm Set" : "Wake Me")
.font(.largeTitle)
.foregroundStyle(.white)
})
.padding(.top, 20)
}
.background(.black)
}
.ignoresSafeArea()
}
}
使用上面的代码,钟在左侧中心之间动画,我想让它到
- 同样以相同的Angular 向右摆动
- 这样总共摆动三次,然后稳定到静止状态.插补弹簧动画使钟在进入静止状态时摆动三次以上.如有任何帮助,我们不胜感激.