本节课演示色相和亮度的复合动画,动画以线性的时间曲线进行播放,并且时长为两秒。
示例代码:
struct ContentView : View { @State var radius: Double = 0 //阴影的半径 @State var brightness: Double = 0 //图像视图的亮度 var body: some View { VStack{ Image("logo") .shadow(radius: CGFloat(radius)) //按照属性的大小修改图像视图的阴影半径 .brightness(brightness) //按照浮点属性的大小修改图像视图的亮度 .animation(.linear(duration: 2)) //设置动画的时间曲线为linear线性样式,并设置动画的时长为两秒 Divider().fixedSize() Button(action: { self.radius += 10 self.brightness = 1 }) { Text("Move Effect") } } } }