手势类型
TapGesture
支持单击、双击和多次点击事件的识别
// count: 识别的连续点击次数
// fingers: 触发点击的手指数
TapGesture(value?: { count?: number, fingers?: number })
// Tap手势识别成功回调。
onAction(event: (event?: GestureEvent) => void)
LongPressGesture
用于触发长按手势事件,触发长按手势的最少手指数为1,最短长按时间为500毫秒
// repeat:是否连续触发事件回调
// duration:触发长按的最短时间
LongPressGesture(value?: { fingers?: number, repeat?: boolean, duration?: number })
// LongPress手势识别成功回调
onAction(event:(event?: GestureEvent) => void)
// LongPress手势识别成功,手指抬起后触发回调
onActionEnd(event:(event?: GestureEvent) => void)
// LongPress手势识别成功,接收到触摸取消事件触发回调
onActionCancel(event: () => void)
PanGesture
用于触发拖动手势事件,滑动的最小距离为5vp时拖动手势识别成功
// direction: 触发拖动的手势方向
// distance: 最小拖动识别距离
PanGesture(value?: { fingers?: number; direction?: PanDirection; distance?: number } | PanGestureOptions)
事件
PinchGesture
用于触发捏合手势,触发捏合手势的最少手指为2指,最大为5指,最小识别距离为5vp。
PinchGesture(value?: { fingers?: number, distance?: number })
事件
RotationGesture
用于触发旋转手势事件,触发旋转手势的最少手指为2指,最大为5指,最小改变度数为1度
// angle: 触发旋转手势的最小改变度数
RotationGesture(value?: { fingers?: number, angle?: number })
事件
SwipeGesture
用于触发滑动事件,滑动速度大于100vp/s时可识别成功
SwipeGesture(value?: { fingers?: number; direction?: SwipeDirection; speed?: number })
// 滑动手势识别成功回调。
onAction(event:(event?: GestureEvent) => void)
GestureGroup
组合手势
// mode: 组合模式
// Sequence: 顺序识别,按照手势的注册顺序识别手势,直到所有手势识别成功。若有一个手势识别失败,后续手势识别均失败。
// Parallel: 并发识别,注册的手势同时识别,直到所有手势识别结束,手势识别互相不影响。
// Exclusive: 互斥识别,注册的手势同时识别,若有一个手势识别成功,则结束手势识别
GestureGroup(mode: GestureMode, ...gesture: GestureType[])
// 顺序组合手势(GestureMode.Sequence)取消后触发回调
onCancel(event: () => void)