SwiftUI—色相和亮度的复合动画的制作

2020-07-14  本文已影响0人  anny_4243

原文链接:https://github.com/fzhlee/SwiftUI-Guide#-%E7%AC%AC5%E8%8A%82combinedanimation

本节课演示色相和亮度的复合动画,动画以线性的时间曲线进行播放,并且时长为两秒。

示例代码:

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")
            }            
        }        
    }
}
上一篇 下一篇

猜你喜欢

热点阅读