• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# 手势处理器
2<!--Kit: ArkUI-->
3<!--Subsystem: ArkUI-->
4<!--Owner: @jiangtao92-->
5<!--Designer: @piggyguy-->
6<!--Tester: @songyanhong-->
7<!--Adviser: @HelloCrease-->
8
9用于设置组件绑定的手势。可以通过[UIGestureEvent](./ts-uigestureevent.md#uigestureevent)对象调用其接口添加或删除手势。
10
11>**说明:**
12>
13>本模块首批接口从API version 12开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
14
15## GestureHandler\<T>
16
17手势处理器的基础类型。
18
19### tag
20
21tag(tag: string): T
22
23设置手势处理器的标志。
24
25**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
26
27**系统能力:** SystemCapability.ArkUI.ArkUI.Full
28
29**参数:**
30
31| 参数名 | 类型 | 必填 |说明                                        |
32| ----  | ------  | ------|---------------------------------- |
33| tag   | string  | 是 |手势处理器的标志。|
34
35**返回值:**
36
37| 类型 | 说明 |
38| -------- | -------- |
39| T | 返回当前组件。 |
40
41### allowedTypes<sup>14+</sup>
42
43allowedTypes(types: Array\<SourceTool>): T
44
45设置手势处理器所支持的事件输入源。
46
47**原子化服务API:** 从API version 14开始,该接口支持在原子化服务中使用。
48
49**系统能力:** SystemCapability.ArkUI.ArkUI.Full
50
51**参数:**
52
53| 参数名 | 类型 | 必填 |说明                                        |
54| ----  | ------  | ------|---------------------------------- |
55| types   | Array\<[SourceTool](ts-gesture-settings.md#sourcetool枚举说明9)>  | 是 |手势处理器所支持的事件输入源。|
56
57**返回值:**
58
59| 类型 | 说明 |
60| -------- | -------- |
61| T | 返回当前组件。 |
62
63## BaseHandlerOptions<sup>15+</sup>
64
65基础手势处理器配置参数。
66
67**原子化服务API:** 从API version 15开始,该接口支持在原子化服务中使用。
68
69**系统能力:** SystemCapability.ArkUI.ArkUI.Full
70
71| 名称           | 类型          | 只读 | 可选 | 说明            |
72|---------------|---------------|-----|------|----------------|
73| isFingerCountLimited | boolean | 否 | 是 | 是否检查触摸屏幕的手指数量。true表示检查触摸屏幕的手指数量,false表示不检查触摸屏幕的手指数量。<br>默认值:false |
74
75## TapGestureHandler
76
77点击手势处理器对象类型。
78
79### constructor
80
81constructor(options?: TapGestureHandlerOptions)
82
83点击手势处理器的构造函数。
84
85**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
86
87**系统能力:** SystemCapability.ArkUI.ArkUI.Full
88
89**参数:**
90
91| 参数名  | 类型                                                         | 必填 | 说明               |
92| ------- | ------------------------------------------------------------ | ---- | ------------------ |
93| options | [TapGestureHandlerOptions](#tapgesturehandleroptions) | 否   | 点击手势处理器配置参数。 |
94
95### onAction
96
97onAction(event: Callback\<GestureEvent>): TapGestureHandler
98
99设置点击手势处理器识别成功回调。
100
101**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
102
103**系统能力:** SystemCapability.ArkUI.ArkUI.Full
104
105**参数:**
106
107| 参数名 | 类型                              | 必填 | 说明                 |
108| ------ | --------------------------------- | ---- | -------------------- |
109| event  | [Callback](./ts-types.md#callback12)<[GestureEvent](ts-gesture-common.md#gestureevent对象说明)> | 是 | 点击手势处理器识别成功回调。 |
110
111**返回值:**
112
113| 类型 | 说明 |
114| -------- | -------- |
115| [TapGestureHandler](#tapgesturehandler) | 返回当前点击手势处理器对象。 |
116
117## TapGestureHandlerOptions
118
119点击手势处理器配置参数。继承自[BaseHandlerOptions](#basehandleroptions15)。
120
121**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
122
123**系统能力:** SystemCapability.ArkUI.ArkUI.Full
124
125| 名称         | 类型                                  | 只读 | 可选 | 说明                 |
126| ------------ | -------------------------------------|------ | ---- | -------------------- |
127| count | number | 否 | 是 | 识别的连续点击次数。当设置的值小于1或不设置时,会被转化为默认值。<br/>默认值:1<br/>取值范围:[0, +∞)<br/>**说明:**<br/>1. 当配置多击时,上一次的最后一根手指抬起和下一次的第一根手指按下的超时时间为300毫秒。<br/>2. 当上次点击的位置与当前点击的位置距离超过60vp时,手势识别失败。|
128| fingers | number | 否 | 是 | 触发点击的手指数,最小为1指,&nbsp;最大为10指。当设置小于1的值或不设置时,会被转化为默认值。<br/>默认值:1<br/>**说明:**<br/>1. 当配置多指时,第一根手指按下后300毫秒内未有足够的手指数按下,手势识别失败,第一根手指抬起后300毫秒内未有足够的手指抬起,手势识别失败。<br/>2. 实际点击手指数超过配置值,手势识别成功。 |
129| isFingerCountLimited<sup>15+</sup> | boolean | 否 | 是 | 是否检查触摸屏幕的手指数量。true表示检查触摸屏幕的手指数量,false表示不检查触摸屏幕的手指数量。如果触摸手指的数量不等于设置的触发点击的手指数(即上述fingers参数),那么该手势识别失败。<br>在多击事件中(上述count参数大于1),需要每一次点击的手指数都等于设置的触发点击的手指数,否则该手势识别失败。<br>默认值:false<br/>**原子化服务API:** 从API version 15开始,该接口支持在原子化服务中使用。 |
130
131## LongPressGestureHandler
132
133长按手势处理器对象类型。
134
135### constructor
136
137constructor(options?: LongPressGestureHandlerOptions)
138
139长按手势处理器的构造函数。
140
141**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
142
143**系统能力:** SystemCapability.ArkUI.ArkUI.Full
144
145**参数:**
146
147
148| 参数名  | 类型                                                         | 必填 | 说明               |
149| ------- | ------------------------------------------------------------ | ---- | ------------------ |
150| options | [LongPressGestureHandlerOptions](#longpressgesturehandleroptions) | 否   | 长按手势处理器配置参数。 |
151
152### onAction
153
154onAction(event: Callback\<GestureEvent>): LongPressGestureHandler
155
156设置长按手势处理器识别成功回调。
157
158**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
159
160**系统能力:** SystemCapability.ArkUI.ArkUI.Full
161
162**参数:**
163
164| 参数名 | 类型                              | 必填 | 说明                 |
165| ------ | --------------------------------- | ---- | -------------------- |
166| event  | [Callback](./ts-types.md#callback12)<[GestureEvent](ts-gesture-common.md#gestureevent对象说明)> | 是 | 长按手势处理器识别成功回调。 |
167
168**返回值:**
169
170| 类型 | 说明 |
171| -------- | -------- |
172| [LongPressGestureHandler](#longpressgesturehandler) | 返回当前长按手势处理器对象。 |
173
174### onActionEnd
175
176onActionEnd(event: Callback\<GestureEvent>): LongPressGestureHandler
177
178设置长按手势处理器结束回调。长按手势处理器识别成功后,最后一根手指抬起时触发回调。
179
180**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
181
182**系统能力:** SystemCapability.ArkUI.ArkUI.Full
183
184**参数:**
185
186| 参数名 | 类型                              | 必填 | 说明                 |
187| ------ | --------------------------------- | ---- | -------------------- |
188| event  | [Callback](./ts-types.md#callback12)<[GestureEvent](ts-gesture-common.md#gestureevent对象说明)> | 是 | 长按手势处理器结束回调。 |
189
190**返回值:**
191
192| 类型 | 说明 |
193| -------- | -------- |
194| [LongPressGestureHandler](#longpressgesturehandler) | 返回当前长按手势处理器对象。 |
195
196### onActionCancel
197
198onActionCancel(event: Callback\<void>): LongPressGestureHandler
199
200设置长按手势处理器取消回调。长按手势处理器识别成功后,接收到触摸取消事件时触发回调。不返回手势事件信息。
201
202**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
203
204**系统能力:** SystemCapability.ArkUI.ArkUI.Full
205
206**参数:**
207
208| 参数名 | 类型                              | 必填 | 说明                 |
209| ------ | --------------------------------- | ---- | -------------------- |
210| event  | [Callback](./ts-types.md#callback12)\<void> | 是 | 长按手势处理器取消回调。 |
211
212**返回值:**
213
214| 类型 | 说明 |
215| -------- | -------- |
216| [LongPressGestureHandler](#longpressgesturehandler) | 返回当前长按手势处理器对象。 |
217
218### onActionCancel<sup>18+</sup>
219
220onActionCancel(event: Callback\<GestureEvent>): LongPressGestureHandler
221
222设置长按手势处理器取消回调。长按手势处理器识别成功后,接收到触摸取消事件时触发回调。与[onActionCancel](#onactioncancel)接口相比,此接口返回手势事件信息。
223
224**原子化服务API:** 从API version 18开始,该接口支持在原子化服务中使用。
225
226**系统能力:** SystemCapability.ArkUI.ArkUI.Full
227
228**参数:**
229
230| 参数名 | 类型                              | 必填 | 说明                 |
231| ------ | --------------------------------- | ---- | -------------------- |
232| event  | [Callback](./ts-types.md#callback12)<[GestureEvent](ts-gesture-common.md#gestureevent对象说明)> | 是 | 长按手势处理器取消回调。该回调会返回手势事件信息。 |
233
234**返回值:**
235
236| 类型 | 说明 |
237| -------- | -------- |
238| [LongPressGestureHandler](#longpressgesturehandler) | 返回当前长按手势处理器对象。 |
239
240## LongPressGestureHandlerOptions
241
242长按手势处理器配置参数。继承自[BaseHandlerOptions](#basehandleroptions15)。
243
244**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
245
246**系统能力:** SystemCapability.ArkUI.ArkUI.Full
247
248| 名称         | 类型                               | 只读    | 可选 | 说明                 |
249| ------------ | ---------------------------------|----- | ---- | -------------------- |
250| fingers | number | 否| 是 | 触发长按的最少手指数,最小为1指,&nbsp;最大取值为10指。<br/>默认值:1 <br/>取值范围:[1, 10]<br/> **说明:** <br/>手指按下后若发生超过15px的移动,则判定当前长按手势识别失败。|
251| repeat | boolean | 否| 是 | 是否连续触发事件回调。true表示为连续触发事件回调,false表示不连续触发事件回调。<br/>默认值:false |
252| duration | number | 否| 是 | 触发长按的最短时间,单位为毫秒(ms)。<br/>默认值:500 <br/>**说明:** <br/>取值范围:[0, +∞),设置小于等于0时,按照默认值500处理。|
253| isFingerCountLimited<sup>15+</sup> | boolean | 否| 是 | 是否检查触摸屏幕的手指数量。true表示检查触摸屏幕的手指数量,false表示不检查触摸屏幕的手指数量。若触摸屏幕的手指的数量不等于设置的触发长按的最少手指数(即上述fingers参数),手势识别将失败。<br>对于已成功识别的手势,后续触摸屏幕的手指数变化,将不触发repeat事件(若触摸屏幕的手指数恢复到设置的触发长按的最少手指数时,可以触发[onAction](ts-basic-gestures-longpressgesture.md#事件)事件),但可以触发[onActionEnd](ts-basic-gestures-longpressgesture.md#事件)事件。<br>默认值:false<br/>**原子化服务API:** 从API version 15开始,该接口支持在原子化服务中使用。 |
254
255## PanGestureHandler
256
257拖动手势处理器对象类型。
258
259### constructor
260
261constructor(options?: PanGestureHandlerOptions)
262
263拖动手势处理器的构造函数。
264
265**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
266
267**系统能力:** SystemCapability.ArkUI.ArkUI.Full
268
269**参数:**
270
271
272| 参数名  | 类型                                                         | 必填 | 说明               |
273| ------- | ------------------------------------------------------------ | ---- | ------------------ |
274| options | [PanGestureHandlerOptions](#pangesturehandleroptions) | 否   | 拖动手势处理器配置参数。 |
275
276### onActionStart
277
278onActionStart(event: Callback\<GestureEvent>): PanGestureHandler
279
280设置拖动手势处理器识别成功回调。
281
282**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
283
284**系统能力:** SystemCapability.ArkUI.ArkUI.Full
285
286**参数:**
287
288| 参数名 | 类型                              | 必填 | 说明                 |
289| ------ | --------------------------------- | ---- | -------------------- |
290| event  | [Callback](./ts-types.md#callback12)<[GestureEvent](ts-gesture-common.md#gestureevent对象说明)> | 是 | 拖动手势处理器识别成功回调。 |
291
292**返回值:**
293
294| 类型 | 说明 |
295| -------- | -------- |
296| [PanGestureHandler](#pangesturehandler) | 返回当前拖动手势处理器对象。 |
297
298### onActionUpdate
299
300onActionUpdate(event: Callback\<GestureEvent>): PanGestureHandler
301
302设置拖动手势处理器更新回调。拖动手势处理器移动过程中触发回调。
303
304**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
305
306**系统能力:** SystemCapability.ArkUI.ArkUI.Full
307
308**参数:**
309
310| 参数名 | 类型                              | 必填 | 说明                 |
311| ------ | --------------------------------- | ---- | -------------------- |
312| event  | [Callback](./ts-types.md#callback12)<[GestureEvent](ts-gesture-common.md#gestureevent对象说明)> | 是 | 拖动手势处理器更新回调。<br/>fingerList为多根手指时,该回调监听每次只会更新一根手指的位置信息。 |
313
314**返回值:**
315
316| 类型 | 说明 |
317| -------- | -------- |
318| [PanGestureHandler](#pangesturehandler) | 返回当前拖动手势处理器对象。 |
319
320### onActionEnd
321
322onActionEnd(event: Callback\<GestureEvent>): PanGestureHandler
323
324设置拖动手势处理器结束回调。拖动手势处理器识别成功后,手指抬起时触发回调。
325
326**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
327
328**系统能力:** SystemCapability.ArkUI.ArkUI.Full
329
330**参数:**
331
332| 参数名 | 类型                              | 必填 | 说明                 |
333| ------ | --------------------------------- | ---- | -------------------- |
334| event  | [Callback](./ts-types.md#callback12)<[GestureEvent](ts-gesture-common.md#gestureevent对象说明)> | 是 | 拖动手势处理器结束回调。 |
335
336**返回值:**
337
338| 类型 | 说明 |
339| -------- | -------- |
340| [PanGestureHandler](#pangesturehandler) | 返回当前拖动手势处理器对象。 |
341
342### onActionCancel
343
344onActionCancel(event: Callback\<void>): PanGestureHandler
345
346设置拖动手势处理器取消回调。拖动手势处理器识别成功后,接收到触摸取消事件时触发回调。不返回手势事件信息。
347
348**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
349
350**系统能力:** SystemCapability.ArkUI.ArkUI.Full
351
352**参数:**
353
354| 参数名 | 类型                              | 必填 | 说明                 |
355| ------ | --------------------------------- | ---- | -------------------- |
356| event  | [Callback](./ts-types.md#callback12)\<void> | 是 | 拖动手势处理器取消回调。 |
357
358**返回值:**
359
360| 类型 | 说明 |
361| -------- | -------- |
362| [PanGestureHandler](#pangesturehandler) | 返回当前拖动手势处理器对象。 |
363
364### onActionCancel<sup>18+</sup>
365
366onActionCancel(event: Callback\<GestureEvent>): PanGestureHandler
367
368设置拖动手势处理器取消回调。拖动手势处理器识别成功后,接收到触摸取消事件时触发回调。与[onActionCancel](#onactioncancel-1)接口相比,此接口返回手势事件信息。
369
370**原子化服务API:** 从API version 18开始,该接口支持在原子化服务中使用。
371
372**系统能力:** SystemCapability.ArkUI.ArkUI.Full
373
374**参数:**
375
376| 参数名 | 类型                              | 必填 | 说明                 |
377| ------ | --------------------------------- | ---- | -------------------- |
378| event  | [Callback](./ts-types.md#callback12)<[GestureEvent](ts-gesture-common.md#gestureevent对象说明)> | 是 | 拖动手势处理器取消回调。返回手势事件信息。 |
379
380**返回值:**
381
382| 类型 | 说明 |
383| -------- | -------- |
384| [PanGestureHandler](#pangesturehandler) | 返回当前拖动手势处理器对象。 |
385
386## PanGestureHandlerOptions
387
388拖动手势处理器配置参数。继承自[BaseHandlerOptions](#basehandleroptions15)。
389
390**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
391
392**系统能力:** SystemCapability.ArkUI.ArkUI.Full
393
394| 名称         | 类型                              | 只读 | 可选 | 说明                 |
395| ------------ | ---------------------------------|----- | ---- | -------------------- |
396| fingers | number | 否| 是 | 用于指定触发拖动的最少手指数,最小为1指,&nbsp;最大取值为10指。<br/>默认值:1<br/>取值范围:[1, 10]<br/>**说明:** <br/>当设置的值小于1或不设置时,会被转化为默认值。 |
397| direction | [PanDirection](./ts-basic-gestures-pangesture.md#pandirection枚举说明) | 否| 是 | 用于指定触发拖动的手势方向,此枚举值支持逻辑与(&amp;)和逻辑或(\|)运算。<br/>默认值:PanDirection.All |
398| distance | number | 否| 是 | 用于指定触发拖动手势事件的最小拖动距离,单位为vp。<br/>手写笔默认值:8,其余输入源默认值:5<br/>**说明:**<br/>[Tabs组件](ts-container-tabs.md)滑动与该拖动手势事件同时存在时,可将distance值设为1,使拖动更灵敏,避免造成事件错乱。<br/>取值范围:[0, +∞),当设定的值小于0时,按默认值处理。<br/>从API version 19开始,手写笔默认值为8,单位为vp。 |
399| distanceMap<sup>19+</sup> |  Map<[SourceTool](ts-gesture-settings.md#sourcetool枚举说明9), number> | 否| 是 | 用于指定不同输入源触发拖动手势事件的最小拖动距离,单位为vp。<br/>手写笔默认值:8,其余输入源默认值:5<br/>取值范围:[0, +∞),当设定的值小于0时,按默认值处理。<br/>**原子化服务API:** 从API version 19开始,该接口支持在原子化服务中使用。 |
400
401## SwipeGestureHandler
402
403滑动手势处理器对象类型。
404
405### constructor
406
407constructor(options?: SwipeGestureHandlerOptions)
408
409滑动手势处理器的构造函数。
410
411**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
412
413**系统能力:** SystemCapability.ArkUI.ArkUI.Full
414
415**参数:**
416
417| 参数名  | 类型                                                         | 必填 | 说明               |
418| ------- | ------------------------------------------------------------ | ---- | ------------------ |
419| options | [SwipeGestureHandlerOptions](#swipegesturehandleroptions) | 否   | 滑动手势处理器配置参数。 |
420
421### onAction
422
423onAction(event: Callback\<GestureEvent>): SwipeGestureHandler
424
425设置滑动手势处理器识别成功回调。
426
427**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
428
429**系统能力:** SystemCapability.ArkUI.ArkUI.Full
430
431**参数:**
432
433| 参数名 | 类型                              | 必填 | 说明                 |
434| ------ | --------------------------------- | ---- | -------------------- |
435| event  | [Callback](./ts-types.md#callback12)<[GestureEvent](ts-gesture-common.md#gestureevent对象说明)> | 是 | 滑动手势处理器识别成功回调。 |
436
437**返回值:**
438
439| 类型 | 说明 |
440| -------- | -------- |
441| [SwipeGestureHandler](#swipegesturehandler) | 返回当前滑动手势处理器对象。 |
442
443## SwipeGestureHandlerOptions
444
445滑动手势处理器配置参数。继承自[BaseHandlerOptions](#basehandleroptions15)。
446
447**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
448
449**系统能力:** SystemCapability.ArkUI.ArkUI.Full
450
451| 名称         | 类型                                   | 只读 | 可选 | 说明                 |
452| ------------ | -------------------------------------- | ---- | -----|--------------- |
453| fingers | number | 否 | 是 | 触发滑动的最少手指数,默认为1,最小为1指,最大为10指。<br/>默认值:1 <br/>取值范围:[1, 10]<br/> |
454| direction | [SwipeDirection](./ts-basic-gestures-swipegesture.md#swipedirection枚举说明) | 否 | 是 | 触发滑动手势的滑动方向。<br/>默认值:SwipeDirection.All |
455| speed | number | 否 | 是 | 识别滑动的最小速度。<br/>默认值:100VP/s <br/>**说明:** <br/>当滑动速度的值小于等于0时,会被转化为默认值。 |
456| isFingerCountLimited<sup>15+</sup> | boolean | 否 | 是 | 是否检查触摸屏幕的手指数量。true表示检查触摸屏幕的手指数量,false表示不检查触摸屏幕的手指数量。如果触摸手指的数量不等于设置的触发滑动的最少手指数(即上述fingers参数),手势识别将失败。<br>默认值:false<br/>**原子化服务API:** 从API version 15开始,该接口支持在原子化服务中使用。 |
457
458## PinchGestureHandler
459
460捏合手势处理器对象类型。
461
462### constructor
463
464constructor(options?: PinchGestureHandlerOptions)
465
466捏合手势处理器的构造函数。
467
468**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
469
470**系统能力:** SystemCapability.ArkUI.ArkUI.Full
471
472**参数:**
473
474
475| 参数名  | 类型                                                         | 必填 | 说明               |
476| ------- | ------------------------------------------------------------ | ---- | ------------------ |
477| options | [PinchGestureHandlerOptions](#pinchgesturehandleroptions) | 否   | 捏合手势处理器配置参数。 |
478
479### onActionStart
480
481onActionStart(event: Callback\<GestureEvent>): PinchGestureHandler
482
483设置捏合手势处理器识别成功回调。
484
485**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
486
487**系统能力:** SystemCapability.ArkUI.ArkUI.Full
488
489**参数:**
490
491| 参数名 | 类型                              | 必填 | 说明                 |
492| ------ | --------------------------------- | ---- | -------------------- |
493| event  | [Callback](./ts-types.md#callback12)<[GestureEvent](ts-gesture-common.md#gestureevent对象说明)> | 是 | 捏合手势处理器识别成功回调。 |
494
495**返回值:**
496
497| 类型 | 说明 |
498| -------- | -------- |
499| [PinchGestureHandler](#pinchgesturehandler) | 返回当前捏合手势处理器对象。 |
500
501### onActionUpdate
502
503onActionUpdate(event: Callback\<GestureEvent>): PinchGestureHandler
504
505设置捏合手势处理器更新回调。捏合手势处理器移动过程中触发回调。
506
507**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
508
509**系统能力:** SystemCapability.ArkUI.ArkUI.Full
510
511**参数:**
512
513| 参数名 | 类型                              | 必填 | 说明                 |
514| ------ | --------------------------------- | ---- | -------------------- |
515| event  | [Callback](./ts-types.md#callback12)<[GestureEvent](ts-gesture-common.md#gestureevent对象说明)> | 是 | 捏合手势处理器更新回调。 |
516
517**返回值:**
518
519| 类型 | 说明 |
520| -------- | -------- |
521| [PinchGestureHandler](#pinchgesturehandler) | 返回当前捏合手势处理器对象。 |
522
523### onActionEnd
524
525onActionEnd(event: Callback\<GestureEvent>): PinchGestureHandler
526
527设置捏合手势处理器结束回调。捏合手势处理器识别成功后,手指抬起时触发回调。
528
529**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
530
531**系统能力:** SystemCapability.ArkUI.ArkUI.Full
532
533**参数:**
534
535| 参数名 | 类型                              | 必填 | 说明                 |
536| ------ | --------------------------------- | ---- | -------------------- |
537| event  | [Callback](./ts-types.md#callback12)<[GestureEvent](ts-gesture-common.md#gestureevent对象说明)> | 是 | 捏合手势处理器结束回调。 |
538
539**返回值:**
540
541| 类型 | 说明 |
542| -------- | -------- |
543| [PinchGestureHandler](#pinchgesturehandler) | 返回当前捏合手势处理器对象。 |
544
545### onActionCancel
546
547onActionCancel(event: Callback\<void>): PinchGestureHandler
548
549设置捏合手势处理器取消回调。捏合手势处理器识别成功后,接收到触摸取消事件时触发回调。不返回手势事件信息。
550
551**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
552
553**系统能力:** SystemCapability.ArkUI.ArkUI.Full
554
555**参数:**
556
557| 参数名 | 类型                              | 必填 | 说明                 |
558| ------ | --------------------------------- | ---- | -------------------- |
559| event  | [Callback](./ts-types.md#callback12)\<void> | 是 | 捏合手势处理器取消回调。不返回手势事件信息。 |
560
561**返回值:**
562
563| 类型 | 说明 |
564| -------- | -------- |
565| [PinchGestureHandler](#pinchgesturehandler) | 返回当前捏合手势处理器对象。 |
566
567### onActionCancel<sup>18+</sup>
568
569onActionCancel(event: Callback\<GestureEvent>): PinchGestureHandler
570
571设置捏合手势处理器取消回调。捏合手势处理器识别成功后,接收到触摸取消事件时触发回调。与[onActionCancel](#onactioncancel-2)接口相比,此接口返回手势事件信息。
572
573**原子化服务API:** 从API version 18开始,该接口支持在原子化服务中使用。
574
575**系统能力:** SystemCapability.ArkUI.ArkUI.Full
576
577**参数:**
578
579| 参数名 | 类型                              | 必填 | 说明                 |
580| ------ | --------------------------------- | ---- | -------------------- |
581| event  | [Callback](./ts-types.md#callback12)<[GestureEvent](ts-gesture-common.md#gestureevent对象说明)> | 是 | 捏合手势处理器取消回调。返回手势事件信息。 |
582
583**返回值:**
584
585| 类型 | 说明 |
586| -------- | -------- |
587| [PinchGestureHandler](#pinchgesturehandler) | 返回当前捏合手势处理器对象。 |
588
589## PinchGestureHandlerOptions
590
591捏合手势处理器配置参数。继承自[BaseHandlerOptions](#basehandleroptions15)。
592
593**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
594
595**系统能力:** SystemCapability.ArkUI.ArkUI.Full
596
597| 名称         | 类型                               | 只读   | 可选 | 说明                 |
598| ------------ | ----------------------------------|---- | ---- | -------------------- |
599| fingers | number | 否 | 是 | 触发捏合的最少手指数,&nbsp;最小为2指,最大为5指。<br/>默认值:2 <br/>取值范围:[2, 5]<br/>触发手势手指可以多于fingers数目,但只有先落下的与fingers相同数目的手指参与手势计算。 |
600| distance | number | 否 | 是 | 最小识别距离,单位为vp。<br/>默认值:5 <br/>**说明:** <br/> 当识别距离的值小于等于0时,会被转化为默认值。|
601| isFingerCountLimited<sup>15+</sup> | boolean | 否 | 是 | 是否检查触摸屏幕的手指数量。true表示检查触摸屏幕的手指数量,false表示不检查触摸屏幕的手指数量。若触摸屏幕的手指数量不等于设置的触发捏合的最少手指数(即上述fingers参数),手势将不会被识别。只有当触摸屏幕的手指数等于设置的触发捏合手势的最小手指数,并且滑动距离满足阈值要求时,手势才能被成功识别(只有先落下的两根手指参与手势计算,若抬起其中的一个,手势识别失败)。对于已经成功识别的手势,后续改变触摸屏幕的手指数量,将不会触发[onActionUpdate](ts-basic-gestures-pinchgesture.md#事件)事件,但可以触发[onActionEnd](ts-basic-gestures-pinchgesture.md#事件)事件。<br>默认值:false<br/>**原子化服务API:** 从API version 15开始,该接口支持在原子化服务中使用。 |
602
603## RotationGestureHandler
604
605旋转手势处理器对象类型。
606
607### constructor
608
609constructor(options?: RotationGestureHandlerOptions)
610
611旋转手势处理器的构造函数。
612
613**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
614
615**系统能力:** SystemCapability.ArkUI.ArkUI.Full
616
617**参数:**
618
619
620| 参数名  | 类型                                                         | 必填 | 说明               |
621| ------- | ------------------------------------------------------------ | ---- | ------------------ |
622| options | [RotationGestureHandlerOptions](#rotationgesturehandleroptions) | 否   | 旋转手势处理器配置参数。 |
623
624### onActionStart
625
626onActionStart(event: Callback\<GestureEvent>): RotationGestureHandler
627
628设置旋转手势处理器识别成功回调。
629
630**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
631
632**系统能力:** SystemCapability.ArkUI.ArkUI.Full
633
634**参数:**
635
636| 参数名 | 类型                              | 必填 | 说明                 |
637| ------ | --------------------------------- | ---- | -------------------- |
638| event  | [Callback](./ts-types.md#callback12)<[GestureEvent](ts-gesture-common.md#gestureevent对象说明)> | 是 | 旋转手势处理器识别成功回调。 |
639
640**返回值:**
641
642| 类型 | 说明 |
643| -------- | -------- |
644| [RotationGestureHandler](#rotationgesturehandler) | 返回当前旋转手势处理器对象。 |
645
646### onActionUpdate
647
648onActionUpdate(event: Callback\<GestureEvent>): RotationGestureHandler
649
650设置旋转手势处理器更新回调。旋转手势处理器移动过程中触发回调。
651
652**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
653
654**系统能力:** SystemCapability.ArkUI.ArkUI.Full
655
656**参数:**
657
658| 参数名 | 类型                              | 必填 | 说明                 |
659| ------ | --------------------------------- | ---- | -------------------- |
660| event  | [Callback](./ts-types.md#callback12)<[GestureEvent](ts-gesture-common.md#gestureevent对象说明)> | 是 | 旋转手势处理器更新回调。 |
661
662**返回值:**
663
664| 类型 | 说明 |
665| -------- | -------- |
666| [RotationGestureHandler](#rotationgesturehandler) | 返回当前旋转手势处理器对象。 |
667
668### onActionEnd
669
670onActionEnd(event: Callback\<GestureEvent>): RotationGestureHandler
671
672设置旋转手势处理器结束回调。旋转手势处理器识别成功后,手指抬起时触发回调。
673
674**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
675
676**系统能力:** SystemCapability.ArkUI.ArkUI.Full
677
678**参数:**
679
680| 参数名 | 类型                              | 必填 | 说明                 |
681| ------ | --------------------------------- | ---- | -------------------- |
682| event  | [Callback](./ts-types.md#callback12)<[GestureEvent](ts-gesture-common.md#gestureevent对象说明)> | 是 | 旋转手势处理器结束回调。 |
683
684**返回值:**
685
686| 类型 | 说明 |
687| -------- | -------- |
688| [RotationGestureHandler](#rotationgesturehandler) | 返回当前旋转手势处理器对象。 |
689
690### onActionCancel
691
692onActionCancel(event: Callback\<void>): RotationGestureHandler
693
694设置旋转手势处理器取消回调。旋转手势处理器识别成功后,接收到触摸取消事件时触发回调。不返回手势事件信息。
695
696**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
697
698**系统能力:** SystemCapability.ArkUI.ArkUI.Full
699
700**参数:**
701
702| 参数名 | 类型                              | 必填 | 说明                 |
703| ------ | --------------------------------- | ---- | -------------------- |
704| event  | [Callback](./ts-types.md#callback12)\<void> | 是 | 旋转手势处理器取消回调。不返回手势事件信息。 |
705
706**返回值:**
707
708| 类型 | 说明 |
709| -------- | -------- |
710| [RotationGestureHandler](#rotationgesturehandler) | 返回当前旋转手势处理器对象。 |
711
712### onActionCancel<sup>18+</sup>
713
714onActionCancel(event: Callback\<GestureEvent>): RotationGestureHandler
715
716设置旋转手势处理器取消回调。旋转手势处理器识别成功后,接收到触摸取消事件时触发回调。与[onActionCancel](#onactioncancel-3)相比,此接口返回手势事件信息。
717
718**原子化服务API:** 从API version 18开始,该接口支持在原子化服务中使用。
719
720**系统能力:** SystemCapability.ArkUI.ArkUI.Full
721
722**参数:**
723
724| 参数名 | 类型                              | 必填 | 说明                 |
725| ------ | --------------------------------- | ---- | -------------------- |
726| event  | [Callback](./ts-types.md#callback12)<[GestureEvent](ts-gesture-common.md#gestureevent对象说明)> | 是 | 旋转手势处理器取消回调。返回手势事件信息。 |
727
728**返回值:**
729
730| 类型 | 说明 |
731| -------- | -------- |
732| [RotationGestureHandler](#rotationgesturehandler) | 返回当前旋转手势处理器对象。 |
733
734## RotationGestureHandlerOptions
735
736旋转手势处理器配置参数。继承自[BaseHandlerOptions](#basehandleroptions15)。
737
738**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
739
740**系统能力:** SystemCapability.ArkUI.ArkUI.Full
741
742| 名称         | 类型                                |只读   |可选 | 说明                 |
743| ------------ | ---------------------------------|----- | ---- | -------------------- |
744| fingers | number | 否 | 是 | 触发旋转的最少手指数,&nbsp;最小为2指,最大为5指。<br/>默认值:2 <br/>取值范围:[2, 5]<br/>触发手势时手指数量可以多于fingers参数值,但仅最先落下的两指参与手势计算。|
745| angle | number | 否 | 是 | 触发旋转手势的最小改变度数,单位为deg。<br/>默认值:1 <br/>**说明:** <br/>当改变度数的值小于等于0或大于360时,会被转化为默认值。|
746| isFingerCountLimited<sup>15+</sup> | boolean | 否 | 是 | 是否检查触摸屏幕的手指数量。true表示检查触摸屏幕的手指数量,false表示不检查触摸屏幕的手指数量。若触摸屏幕的手指数量不等于设置的触发旋转的最少手指数(即上述fingers参数),手势将不会被识别。只有当触摸屏幕的手指数等于设置的触发旋转的最少手指数,并且滑动距离达到阈值时,手势才能被成功识别(只有先落下的两根手指参与手势计算,若抬起其中的一个,手势识别失败)。<br>对于已成功识别的手势,后续改变触摸屏幕的手指数量,不会触发[onActionUpdate](ts-basic-gestures-rotationgesture.md#事件)事件,但可以触发[onActionEnd](ts-basic-gestures-rotationgesture.md#事件)事件。<br>默认值:false<br/>**原子化服务API:** 从API version 15开始,该接口支持在原子化服务中使用。 |
747
748## GestureGroupHandler
749
750手势组处理器对象类型。
751
752### constructor
753
754constructor(options?: GestureGroupGestureHandlerOptions)
755
756手势组处理器的构造函数。
757
758**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
759
760**系统能力:** SystemCapability.ArkUI.ArkUI.Full
761
762**参数:**
763
764| 参数名  | 类型                                                         | 必填 | 说明               |
765| ------- | ------------------------------------------------------------ | ---- | ------------------ |
766| options | [GestureGroupGestureHandlerOptions](#gesturegroupgesturehandleroptions) | 否   | 手势组处理器配置参数。 |
767
768### onCancel
769
770onCancel(event: Callback\<void>): GestureGroupHandler
771
772设置手势组处理器取消回调。顺序组合手势([GestureMode](./ts-combined-gestures.md#gesturemode枚举说明).Sequence)取消后触发回调。
773
774**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
775
776**系统能力:** SystemCapability.ArkUI.ArkUI.Full
777
778**参数:**
779
780| 参数名 | 类型                              | 必填 | 说明                 |
781| ------ | --------------------------------- | ---- | -------------------- |
782| event  | [Callback](./ts-types.md#callback12)\<void> | 是 | 手势组处理器取消回调。 |
783
784**返回值:**
785
786| 类型 | 说明 |
787| -------- | -------- |
788| [GestureGroupHandler](#gesturegrouphandler) | 返回当前手势组处理器对象。 |
789
790## GestureGroupGestureHandlerOptions
791
792手势组处理器配置参数。
793
794**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
795
796**系统能力:** SystemCapability.ArkUI.ArkUI.Full
797
798| 名称         | 类型                               | 只读    | 可选 | 说明                 |
799| ------------ | ---------------------------------|----- | ---- | -------------------- |
800| mode    | [GestureMode](./ts-combined-gestures.md#gesturemode枚举说明)                        | 否 | 否   | 设置组合手势识别模式。<br/>默认值:GestureMode.Sequence      |
801| gestures | [GestureHandler](#gesturehandlert)\<[TapGestureHandler](#tapgesturehandler) \| [LongPressGestureHandler](#longpressgesturehandler) \| [PanGestureHandler](#pangesturehandler) \| [SwipeGestureHandler](#swipegesturehandler) \| [PinchGestureHandler](#pinchgesturehandler) \| [RotationGestureHandler](#rotationgesturehandler) \| [GestureGroupHandler](#gesturegrouphandler)>[] | 否 | 否   | 手势组下需要包含的手势。<br/>**说明:**  <br/>当需要为一个组件同时添加单击和双击手势时,可在组合手势中添加两个TapGesture,需要双击手势在前,单击手势在后,否则不生效。 |
802
803## GesturePriority枚举说明
804
805绑定手势的优先级。
806
807**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
808
809**系统能力:** SystemCapability.ArkUI.ArkUI.Full
810
811| 名称 | 值 |  说明 |
812| ------| -- | -------- |
813| NORMAL | 0 | 普通优先级手势。 |
814| PRIORITY | 1 | 高优先级手势。|