原文链接:https://github.com/fzhlee/SwiftUI-Guide#-%E7%AC%AC2%E8%8A%82opacitylinear-
通过scaleEffect、opacity和withAnimation方法,实现linear类型的缩放动画,并设置动画的时长为1秒,制作一份缩放和渐隐同时进行的动画效果
示例代码:
struct ContentView : View {
@State var factor: Double = 1 //图像视图的缩放比例
@State var alpha: Double = 1 //图像视图的不透明度
var body: some View {
Image("logo")
.scaleEffect(CGFloat(factor))
.opacity(alpha) //按照浮点属性的大小修改图像视图的不透明度
.onTapGesture { //给图像视图绑定单点的手势,当用户点击图像视图时执行后面的代码
withAnimation(.linear(duration: 1.0)) { //设置动画的时间曲线为线型,动画的时长为1秒
self.factor += 0.1 //将图像放大到1.1倍
self.alpha -= 0.2 //将图像不透明度减少0.2
}
}
}
}










网友评论