原文链接:https://github.com/fzhlee/SwiftUI-Guide#-%E7%AC%AC4%E8%8A%82rotationgesture-
本节课演示旋转手势的使用,旋转手势常用于对图片进行旋转操作,需要同时使用到两个手指。
示例代码:
struct ContentView : View {
@State var angle = 0.0 //表示图像视图进行旋转的角度
var body: some View {
let rotationGesture = RotationGesture(minimumAngleDelta: Angle.init(degrees: 20)) //初始化一个旋转手势,该手势一旦识别到双指旋转滑动的触摸事件,就会调用手势的结束事件
.onChanged({ (angle) in
self.angle += angle.animatableData 当旋转手势的状态完成变化时,将当前视图的角度数值,加上旋转手势返回的角度
}).onEnded { (angle) in //当旋转手势结束时,在控制台输出角度属性的数值
print(self.angle)
}
return Image("logo") //图像视图作为旋转手势的载体
.gesture(rotationGesture)
.rotationEffect(Angle.init(degrees: self.angle)) //对视图进行旋转操作,旋转的角度为属性的值
}
}
网友评论