首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >EasyTouch☀️ 四、EasyTouch4_x与EasyTouch5_x事件的注册方法

EasyTouch☀️ 四、EasyTouch4_x与EasyTouch5_x事件的注册方法

作者头像
星河造梦坊官方
发布2024-08-14 17:22:17
发布2024-08-14 17:22:17
1710
举报

EasyTouch4_x是订阅事件,类似addlistener。

EasyTouch5_x是获取当前事件。

🟥 EasyTouch4_x:订阅事件

代码语言:javascript
复制
using UnityEngine;
using HedgehogTeam.EasyTouch;

public class test0 : MonoBehaviour {

    //在OnEnable中订阅Easytouch中的事件
    private void OnEnable()
    {
        //委托
        EasyTouch.On_TouchStart += OnTouchStart;
    }

    //在OnDisable和OnDestroy中取消订阅EasyTouch中对应的事件
    private void OnDisable()
    {
        EasyTouch.On_TouchStart -= OnTouchStart;
    }

    private void OnDestroy()
    {
        EasyTouch.On_TouchStart -= OnTouchStart;
    }

    //gesture由EasyTouch系统传递过来,包含触碰的很多信息,可用于方法中的调用
    void OnTouchStart(Gesture gesture)
    {
        Debug.Log("Start");
        Debug.Log("StartPosition"+gesture.startPosition);
        //触碰时长
        Debug.Log("StartPosition" + gesture.actionTime);
    }
}

🟧 EasyTouch5_x:获取事件

该写法不用写订阅事件,而是用EasyTouch.current获取玩家当前输入的手势,与EasyTouch预定义的手势进行对比,可根据结果进行各种行为

代码语言:javascript
复制
using UnityEngine;
using HedgehogTeam.EasyTouch;

public class test1 : MonoBehaviour {

    private void Update()
    {
        //通过EasyTouch.current获取玩家当前输入的手势
        Gesture currentGesture =EasyTouch.current;

        //当前屏幕上的手势类型currentGesture.type是否等于On_TouchStart类型
        //当无输入时,EasyTouch.current为null,currentGesture.type获取不到当前类型,系统会报错
        if (currentGesture!=null && EasyTouch.EvtType.On_TouchStart == currentGesture.type)
        {
            OnTouchStart(currentGesture);
            Debug.Log("StartPosition" + currentGesture.startPosition);
        }
    }

    void OnTouchStart(Gesture gesture)
    {
        Debug.Log("Start");
        Debug.Log("StartPosition" + gesture.startPosition);
        //触碰时长
        Debug.Log("StartPosition" + gesture.actionTime);
    }
}

大家还有什么问题,欢迎在下方留言!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-09-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 🟥 EasyTouch4_x:订阅事件
  • 🟧 EasyTouch5_x:获取事件
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档