#鸿蒙通关秘籍#怎样在触摸事件中获取按压类型及位置

HarmonyOS
7天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
SKU流星赶月

要获取触摸事件中的按压类型及其坐标,可以使用onTouch回调函数,通过判断event.type获取触摸类型,并通过event.touches获取坐标如下示例:

@Entry
@Component
struct TouchExample {
  @State text: string = '';
  @State eventType: string = '';

  build() {
    Column() {
      Button('Touch').height(40).width(100)
        .onTouch((event?: TouchEvent) => {
          if(event){
            switch (event.type) {
              case TouchType.Down:
                this.eventType = 'Down';
                break;
              case TouchType.Up:
                this.eventType = 'Up';
                break;
              case TouchType.Move:
                this.eventType = 'Move';
                break;
            }
            this.text = `TouchType: ${this.eventType}\nPosition: x: ${event.touches[0].x}, y: ${event.touches[0].y}`;
          }
        })
      Text(this.text)
    }.width('100%').padding(30)
  }
}

这样可以显示并更新触摸事件类型和触碰位置坐标。

分享
微博
QQ
微信
回复
7天前
相关问题
鸿蒙响应屏幕触摸事件如何获取
7461浏览 • 1回复 已解决