native_gesture.h
概述
提供NativeGesture接口的类型定义。
库: libace_ndk.z.so
引用文件: <arkui/native_gesture.h>
系统能力: SystemCapability.ArkUI.ArkUI.Full
起始版本: 12
相关模块:ArkUI_NativeModule
汇总
结构体
| 名称 | 描述 |
|---|---|
| struct ArkUI_NativeGestureAPI_1 | 手势模块接口集合。 |
| struct ArkUI_NativeGestureAPI_2 | 手势模块接口集合。 |
类型定义
| 名称 | 描述 |
|---|---|
| typedef uint32_t ArkUI_GestureEventActionTypeMask | 定义手势事件类型集合 |
| typedef uint32_t ArkUI_GestureDirectionMask | 定义滑动手势方向集合。 |
| typedef ArkUI_GestureRecognizer * ArkUI_GestureRecognizerHandle | 提供手势识别器句柄类型对象定义。 |
| typedef ArkUI_GestureRecognizerHandle * ArkUI_GestureRecognizerHandleArray | 提供手势识别器句柄类型数组对象定义。 |
| typedef ArkUI_TouchRecognizer * ArkUI_TouchRecognizerHandle | 提供触摸识别器句柄类型对象定义。 |
| typedef ArkUI_TouchRecognizerHandle * ArkUI_TouchRecognizerHandleArray | 提供触摸识别器句柄类型数组对象定义。 |
| typedef struct ArkUI_GestureEventTargetInfo ArkUI_GestureEventTargetInfo | 提供手势事件目标信息类型对象定义。 |
| typedef struct ArkUI_ParallelInnerGestureEvent ArkUI_ParallelInnerGestureEvent | 提供并行内部手势事件类型对象定义。 |
| typedef struct ArkUI_GestureInterruptInfo ArkUI_GestureInterruptInfo | 获取手势中断事件中的用户自定义数据。 |
| typedef void(* ArkUI_GestureRecognizerDestructNotifyCallback) (ArkUI_GestureRecognizer *recognizer, void *userData) | 定义手势识别器析构通知事件的回调函数类型。 |
枚举
函数
| 名称 | 描述 |
|---|---|
| bool OH_ArkUI_GestureInterruptInfo_GetSystemFlag (const ArkUI_GestureInterruptInfo *event) | 判断是否组件内置手势。 |
| ArkUI_GestureRecognizer * OH_ArkUI_GestureInterruptInfo_GetRecognizer (const ArkUI_GestureInterruptInfo *event) | 返回被打断的手势指针。 |
| ArkUI_GestureEvent * OH_ArkUI_GestureInterruptInfo_GetGestureEvent (const ArkUI_GestureInterruptInfo *event) | 返回打断的手势事件数据。 |
| int32_t OH_ArkUI_GestureInterruptInfo_GetSystemRecognizerType (const ArkUI_GestureInterruptInfo *event) | 当要触发的是系统内部手势时,使用该方法可返回该系统内部手势的类型。 |
| int32_t OH_ArkUI_GestureInterruptInfo_GetTouchRecognizers (const ArkUI_GestureInterruptInfo* info, ArkUI_TouchRecognizerHandleArray* recognizers, int32_t* size) | 使用该方法可返回与该手势相关的所有触摸识别器。 |
| int32_t OH_ArkUI_TouchRecognizer_GetNodeHandle (const ArkUI_TouchRecognizerHandle recognizer) | 使用该方法可返回与触摸识别器绑定的组件句柄。 |
| int32_t OH_ArkUI_TouchRecognizer_CancelTouch (ArkUI_TouchRecognizerHandle recognizer, ArkUI_GestureInterruptInfo* info) | 使用该方法向对应触摸识别器分发Cancel事件拦截后续触摸事件。 |
| ArkUI_GestureEventActionType OH_ArkUI_GestureEvent_GetActionType (const ArkUI_GestureEvent *event) | 返回手势事件类型。 |
| ArkUI_NodeHandle OH_ArkUI_GestureEvent_GetResponseNode (ArkUI_GestureEvent *event) | 返回响应手势的节点。 |
| const ArkUI_UIInputEvent * OH_ArkUI_GestureEvent_GetRawInputEvent (const ArkUI_GestureEvent *event) | 返回手势输入。 |
| int32_t OH_ArkUI_LongPress_GetRepeatCount (const ArkUI_GestureEvent *event) | 返回长按手势定时触发次数。 |
| float OH_ArkUI_PanGesture_GetVelocity (const ArkUI_GestureEvent *event) | 滑动手势返回手势主方向速度。 |
| float OH_ArkUI_PanGesture_GetVelocityX (const ArkUI_GestureEvent *event) | 滑动手势返回当前手势的x轴方向速度。 |
| float OH_ArkUI_PanGesture_GetVelocityY (const ArkUI_GestureEvent *event) | 滑动手势返回当前手势的y轴方向速度。 |
| float OH_ArkUI_PanGesture_GetOffsetX (const ArkUI_GestureEvent *event) | 滑动手势返回当前手势事件x轴相对偏移量。 |
| float OH_ArkUI_PanGesture_GetOffsetY (const ArkUI_GestureEvent *event) | 滑动手势返回当前手势事件y轴相对偏移量。 |
| float OH_ArkUI_SwipeGesture_GetAngle (const ArkUI_GestureEvent *event) | 滑动手势返回当前手势事件角度信息。 |
| float OH_ArkUI_SwipeGesture_GetVelocity (const ArkUI_GestureEvent *event) | 滑动手势场景中所有手指滑动平均速度。 |
| float OH_ArkUI_RotationGesture_GetAngle (const ArkUI_GestureEvent *event) | 旋转手势返回当前手势事件角度信息。 |
| float OH_ArkUI_PinchGesture_GetScale (const ArkUI_GestureEvent *event) | 捏合手势返回当前手势事件缩放信息。 |
| float OH_ArkUI_PinchGesture_GetCenterX (const ArkUI_GestureEvent *event) | 捏合手势中心点相对于当前组件元素左上角x轴坐标。 |
| float OH_ArkUI_PinchGesture_GetCenterY (const ArkUI_GestureEvent *event) | 捏合手势中心点相对于当前组件元素左上角y轴坐标。 |
| ArkUI_NodeHandle OH_ArkUI_GestureEvent_GetNode (const ArkUI_GestureEvent *event) | 获取被绑定手势的ARKUI组件。 |
| int32_t OH_ArkUI_GetResponseRecognizersFromInterruptInfo (const ArkUI_GestureInterruptInfo *event, ArkUI_GestureRecognizerHandleArray *responseChain, int32_t *count) | 获取手势响应链的信息。 |
| int32_t OH_ArkUI_SetGestureRecognizerEnabled (ArkUI_GestureRecognizer *recognizer, bool enabled) | 设置手势识别器的使能状态。 |
| int32_t(* OH_ArkUI_SetGestureRecognizerLimitFingerCount )(ArkUI_GestureRecognizer *recognizer, bool limitFingerCount) | 设置是否检查触摸屏幕的手指数量。 |
| bool OH_ArkUI_GetGestureRecognizerEnabled (ArkUI_GestureRecognizer *recognizer) | 获取手势识别器的使能状态。 |
| int32_t OH_ArkUI_GetGestureRecognizerState (ArkUI_GestureRecognizer *recognizer, ArkUI_GestureRecognizerState *state) | 获取手势识别器的状态。 |
| int32_t OH_ArkUI_GetGestureEventTargetInfo (ArkUI_GestureRecognizer *recognizer, ArkUI_GestureEventTargetInfo **info) | 获取手势事件目标信息。 |
| int32_t OH_ArkUI_GestureEventTargetInfo_IsScrollBegin (ArkUI_GestureEventTargetInfo *info, bool *ret) | 当前滚动类容器组件是否在顶部。 |
| int32_t OH_ArkUI_GestureEventTargetInfo_IsScrollEnd (ArkUI_GestureEventTargetInfo *info, bool *ret) | 当前滚动类容器组件是否在底部。 |
| int32_t OH_ArkUI_GetPanGestureDirectionMask (ArkUI_GestureRecognizer *recognizer, ArkUI_GestureDirectionMask *directionMask) | 获取滑动手势的滑动方向。 |
| bool OH_ArkUI_IsBuiltInGesture (ArkUI_GestureRecognizer *recognizer) | 当前手势是否为系统内置手势。 |
| int32_t OH_ArkUI_GetGestureTag (ArkUI_GestureRecognizer *recognizer, char *buffer, int32_t bufferSize, int32_t *result) | 获取手势识别器的标记。 |
| int32_t OH_ArkUI_GetGestureBindNodeId (ArkUI_GestureRecognizer *recognizer, char *nodeId, int32_t size, int32_t *result) | 获取手势识别器绑定的组件的ID。 |
| bool OH_ArkUI_IsGestureRecognizerValid (ArkUI_GestureRecognizer *recognizer) | 当前手势识别器是否有效。 |
| void * OH_ArkUI_ParallelInnerGestureEvent_GetUserData (ArkUI_ParallelInnerGestureEvent *event) | 获取并行内部手势事件中的用户自定义数据。 |
| void* OH_ArkUI_GestureInterrupter_GetUserData(ArkUI_GestureInterruptInfo* event) | 获取手势中断事件中的用户自定义数据。 |
| ArkUI_GestureRecognizer * OH_ArkUI_ParallelInnerGestureEvent_GetCurrentRecognizer (ArkUI_ParallelInnerGestureEvent *event) | 获取并行内部手势事件中的当前手势识别器。 |
| int32_t OH_ArkUI_ParallelInnerGestureEvent_GetConflictRecognizers (ArkUI_ParallelInnerGestureEvent *event, ArkUI_GestureRecognizerHandleArray *array, int32_t *size) | 获取并行内部手势事件中的冲突的手势识别器。 |
| int32_t OH_ArkUI_SetArkUIGestureRecognizerDisposeNotify (ArkUI_GestureRecognizer *recognizer, ArkUI_GestureRecognizerDestructNotifyCallback callback, void *userData) | 设置手势识别器对象析构通知回调函数。 |
| int32_t OH_ArkUI_GetGestureParam_DirectMask (ArkUI_GestureRecognizer *recognizer, ArkUI_GestureDirectionMask *directMask) | 获取手势识别器的滑动方向。 |
| int32_t OH_ArkUI_GetGestureParam_FingerCount (ArkUI_GestureRecognizer *recognizer, int *finger) | 获取手势识别器的手指数。 |
| int32_t OH_ArkUI_GetGestureParam_limitFingerCount (ArkUI_GestureRecognizer *recognizer, bool *isLimited) | 获取手势识别器是否有手指数限制。 |
| int32_t OH_ArkUI_GetGestureParam_repeat (ArkUI_GestureRecognizer *recognizer, bool *isRepeat) | 获取手势识别器是否连续触发事件回调。 |
| int32_t OH_ArkUI_GetGestureParam_distance (ArkUI_GestureRecognizer *recognizer, double *distance) | 获取手势识别器的手指允许的移动距离范围。 |
| int32_t OH_ArkUI_GetGestureParam_speed (ArkUI_GestureRecognizer *recognizer, double *speed) | 获取手势识别器的识别滑动的最小速度。 |
| int32_t OH_ArkUI_GetGestureParam_duration (ArkUI_GestureRecognizer *recognizer, int *duration) | 获取手势识别器的触发长按的最短时间。 |
| int32_t OH_ArkUI_GetGestureParam_angle (ArkUI_GestureRecognizer *recognizer, double *angle) | 获取手势识别器的旋转手势的最小改变度数。 |
| int32_t OH_ArkUI_GetGestureParam_distanceThreshold (ArkUI_GestureRecognizer *recognizer, double *distanceThreshold) | 获取手势识别器的手势移动阈值。 |