未验证 提交 8e654438 编写于 作者: L luoying_ace 提交者: Gitee

update zh-cn/application-dev/reference/arkui-ts/ts-basic-gestures-pinchgesture.md.

Signed-off-by: Nluoying_ace <luoying19@huawei.com>
上级 5c22490c
...@@ -16,7 +16,7 @@ PinchGesture(value?: { fingers?: number, distance?: number }) ...@@ -16,7 +16,7 @@ PinchGesture(value?: { fingers?: number, distance?: number })
| 参数名称 | 参数类型 | 必填 | 参数描述 | | 参数名称 | 参数类型 | 必填 | 参数描述 |
| -------- | -------- | -------- | -------- | | -------- | -------- | -------- | -------- |
| fingers | number | 否 | 触发捏合的最少手指数,&nbsp;最小为2指,最大为5指。<br/>默认值:2 | | fingers | number | 否 | 触发捏合的最少手指数,&nbsp;最小为2指,最大为5指。<br/>默认值:2 |
| distance | number | 否 | 最小识别距离,单位为vp。<br/>默认值:3.0 | | distance | number | 否 | 最小识别距离,单位为vp。<br/>默认值:3 |
## 事件 ## 事件
...@@ -36,26 +36,40 @@ PinchGesture(value?: { fingers?: number, distance?: number }) ...@@ -36,26 +36,40 @@ PinchGesture(value?: { fingers?: number, distance?: number })
@Entry @Entry
@Component @Component
struct PinchGestureExample { struct PinchGestureExample {
@State scaleValue: number = 1 @State scaleValue: number = 1;
@State pinchValue: number = 1;
@State pinchX: number = 0;
@State pinchY: number = 0;
build() { build() {
Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.SpaceBetween }) { Column() {
Text('PinchGesture scale:' + this.scaleValue) Column() {
} Text('PinchGesture scale:\n' + this.scaleValue)
.height(100).width(200).padding(20).border({ width: 1 }).margin(80) Text('PinchGesture center:\n(' + this.pinchX + ',' + this.pinchY + ')')
.scale({ x: this.scaleValue, y: this.scaleValue, z: this.scaleValue }) }
.gesture( .height(200)
PinchGesture() .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) => { .onActionStart((event: GestureEvent) => {
console.info('Pinch start') console.info('Pinch start');
}) })
.onActionUpdate((event: GestureEvent) => { .onActionUpdate((event: GestureEvent) => {
this.scaleValue = event.scale this.scaleValue = this.pinchValue * event.scale;
this.pinchX = event.pinchCenterX;
this.pinchY = event.pinchCenterY;
}) })
.onActionEnd(() => { .onActionEnd(() => {
console.info('Pinch end') this.pinchValue = this.scaleValue;
console.info('Pinch end');
}) })
) )
}.width('100%')
} }
} }
``` ```
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册