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指, 最大为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指, 最大取值为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指, 最大取值为10指。<br/>默认值:1<br/>取值范围:[1, 10]<br/>**说明:** <br/>当设置的值小于1或不设置时,会被转化为默认值。 | 397| direction | [PanDirection](./ts-basic-gestures-pangesture.md#pandirection枚举说明) | 否| 是 | 用于指定触发拖动的手势方向,此枚举值支持逻辑与(&)和逻辑或(\|)运算。<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 | 否 | 是 | 触发捏合的最少手指数, 最小为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 | 否 | 是 | 触发旋转的最少手指数, 最小为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 | 高优先级手势。|