[文章]HarmonyOS应用开发-ets基础手势LongPressGesture

阅读量0
0
2
1.接口
LongPressGesture(options?: { fingers?: number, repeat?: boolean, duration?: number })
参数:
参数名称
参数类型
必填
默认值
参数描述
fingers
number
1
触发长按的最少手指数,最小为1指, 最大取值为10指。
repeat
boolean
false
是否连续触发事件回调。
duration
number
500
最小触发长按的时间,单位为毫秒(ms)。
2.事件
名称
功能描述
onAction((event?: GestureEvent) => void)
LongPress手势识别成功回调。
onActionEnd((event?: GestureEvent) => void)
LongPress手势识别成功,手指抬起后触发回调。
onActionCancel(event: () => void)
LongPress手势识别成功,接收到触摸取消事件触发回调。
3.代码示例
  1. @Entry
  2. @Component
  3. struct Index {
  4.   @State count: number = 0

  5.   build() {
  6.     Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Center, justifyContent: FlexAlign.SpaceBetween }) {
  7.       Text('LongPress onAction:' + this.count)
  8.       .fontSize(30)
  9.     }
  10.     .height(200).width(300).padding(60).border({ width:1 }).margin(30)
  11.     .gesture(
  12.     LongPressGesture({ repeat: true })
  13.     //长按动作存在会连续触发
  14.       .onAction((event: GestureEvent) => {
  15.         if (event.repeat) { this.count++ }
  16.       })
  17.     //长按动作一结束触发
  18.       .onActionEnd(() => {
  19.         this.count = 0
  20.       })
  21.     )
  22.   }
  23. }
复制代码
4.效果
长按屏幕效果如图:
微信截图_20220107102918.png
代码地址:



回帖

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
链接复制成功,分享给好友