中国优质的IT技术网站
专业IT技术创作平台
IT职业在线教育平台
描述:用于触发捏合手势,触发捏合手势的最少手指为2指,最大为5指,最小识别距离为3vp。
Api:从API Version 7开始支持
接口:PinchGesture(value?: { fingers?: number, distance?: number })
参数:
事件:
示例代码:
@Entry @Component struct PinchGestureExample { @State scaleValue: number = 1; @State pinchValue: number = 1; @State pinchX: number = 0; @State pinchY: number = 0; build() { Column() { Column() { Text('PinchGesture scale:\n' + this.scaleValue).fontSize(20) Text('PinchGesture center:\n(' + this.pinchX + ',' + this.pinchY + ')').fontSize(20) } .height(300) .width(300) .padding(20) .border({ width: 3 }) .margin({ top: 100 }) .scale({ x: this.scaleValue, y: this.scaleValue, z: 1 }) // 三指捏合触发该手势事件 .gesture( PinchGesture({ fingers: 3 }) .onActionStart((event: GestureEvent) => { console.info('Pinch start'); }) .onActionUpdate((event: GestureEvent) => { this.scaleValue = this.pinchValue * event.scale; this.pinchX = event.pinchCenterX; this.pinchY = event.pinchCenterY; }) .onActionEnd(() => { this.pinchValue = this.scaleValue; console.info('Pinch end'); }) ) }.width('100%') } }
示例效果
代码地址:
(https://gitee.com/jltfcloudcn/jump_to/tree/master/TapGesture)
微信扫码分享