EasyTouch基本用法

简介: EasyTouch基本用法本文提供全流程,中文翻译。Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 —— 高分辨率用户请根据需求调整网页缩放比例)...

EasyTouch基本用法


本文提供全流程,中文翻译。

Chinar坚持将简单的生活方式,带给世人!

(拥有更好的阅读体验 —— 高分辨率用户请根据需求调整网页缩放比例)




1

hierarchy (层次面板)中创建 EasyTouch

这里写图片描述


2

using - 引用命名空间

HedgehogTeam 是他们团队名称。—— 刺猬

using HedgehogTeam.EasyTouch;

3

EasyTouch.4_x 版本的基本写法

运用事件+委托的方式

(相较于 EasyTouch.5_x 的写法。节省性能,不过要麻烦一些)

using UnityEngine;
using HedgehogTeam.EasyTouch;//引用命名空间



/// <summary>
/// EasyTouch 4 版本的基本写法
/// </summary>
public class Easy4 : MonoBehaviour
{


    /// <summary>
    /// 在OnEnable中注册EasyTouch事件
    /// </summary>
    private void OnEnable()
    {
        //添加委托
        EasyTouch.On_TouchStart += OnTouchStart;
        EasyTouch.On_TouchUp += OnTouchEnd;
        EasyTouch.On_Swipe += OnTouchSwipe;
    }



    /// <summary>
    /// 在OnDisable中取消注册事件
    /// </summary>
    private void OnDisable()
    {
        //删除委托
        EasyTouch.On_TouchStart -= OnTouchStart;
        EasyTouch.On_TouchUp -= OnTouchEnd;
        EasyTouch.On_Swipe -= OnTouchSwipe;
    }



    /// <summary>
    /// 在OnDestroy中删除注册事件
    /// </summary>
    private void OnDestroy()
    {
        //删除委托
        EasyTouch.On_TouchStart -= OnTouchStart;
        EasyTouch.On_TouchUp -= OnTouchEnd;
        EasyTouch.On_Swipe -= OnTouchSwipe;
    }



    /// <summary>
    /// 开始手势
    /// </summary>
    /// <param name="gesture"></param>
    void OnTouchStart(Gesture gesture)
    {
        print("OnTouchStart");
        print(gesture.startPosition + "开始坐标");
    }



    /// <summary>
    /// 结束手势
    /// </summary>
    /// <param name="gesture"></param>
    void OnTouchEnd(Gesture gesture)
    {
        print("OnTouchEnd");
        print(gesture.position + "结束坐标");
        print(gesture.actionTime + "结束持续了多久");
    }



    /// <summary>
    /// 拖动手势
    /// </summary>
    /// <param name="gesture"></param>
    void OnTouchSwipe(Gesture gesture)
    {
        print("OnTouchSwipe");
        print(gesture.position + "拖动坐标");
        print(gesture.actionTime + "拖动持续了多久");
        print(gesture.swipe + "类型");
    }
}

4

EasyTouch.5_x 版本的基本写法

通过系统自带函数 Update 內建方法体,来直接完成判定

(由于每帧都需要容错,稍微的消耗性能,不过要简单许多)

提示: EasyTouch.5_x 版本中 加强了易用性!

EasyTouch 被设为单例。就算 Hierarchy 中不创建 EasyTouch。在场景运行时,系统会自动完成创建。

using UnityEngine;
using HedgehogTeam.EasyTouch;//引用命名空间



/// <summary>
/// Easy5 版本的基本写法
/// </summary>
public class Easy5Write : MonoBehaviour
{


    /// <summary>
    /// 更新函数
    /// </summary>
    void Update()
    {
        //用 EasyTouch.current 记录玩家输入的手势 presentGesture
        Gesture presentGesture = EasyTouch.current;

        //容错 (当玩家没有手势输入的时候)
        if (presentGesture!=null)
        {
            //以下判断 玩家手势类型 是否和 EasyTouch系统手势类型相同
            if (EasyTouch.EvtType.On_TouchStart == presentGesture.type)
            {
                OnTouchStart(presentGesture);
            }
            else if (EasyTouch.EvtType.On_TouchUp == presentGesture.type)
            {
                OnTouchEnd(presentGesture);
            }
            else if (EasyTouch.EvtType.On_Swipe == presentGesture.type)
            {
                OnTouchSwipe(presentGesture);
            }
        }
    }



    /// <summary>
    /// 开始手势
    /// </summary>
    /// <param name="gesture"></param>
    void OnTouchStart(Gesture gesture)
    {
        print("OnTouchStart");
        print(gesture.startPosition + "开始坐标");
    }



    /// <summary>
    /// 结束手势
    /// </summary>
    /// <param name="gesture"></param>
    void OnTouchEnd(Gesture gesture)
    {
        print("OnTouchEnd");
        print(gesture.position + "结束坐标");
        print(gesture.actionTime + "结束持续了多久");
    }



    /// <summary>
    /// 拖动手势
    /// </summary>
    /// <param name="gesture"></param>
    void OnTouchSwipe(Gesture gesture)
    {
        print("OnTouchSwipe");
        print(gesture.position + "拖动坐标");
        print(gesture.actionTime + "拖动持续了多久");
        print(gesture.swipe + "类型");
    }
}

支持

May Be —— 搞开发,总有一天要做的事!


拥有自己的服务器,无需再找攻略!

Chinar 提供一站式教程,闭眼式创建!

为新手节省宝贵时间,避免采坑!


先点击领取 —— 阿里全产品优惠卷 (享受最低优惠)


1 —— 云服务器超全购买流程 (新手必备!)

2 —— 阿里ECS云服务器自定义配置 - 购买教程(新手必备!)

3—— Windows 服务器配置、运行、建站一条龙 !

4 —— Linux 服务器配置、运行、建站一条龙 !



70

Chinar


END

本博客为非营利性个人原创,除部分有明确署名的作品外,所刊登的所有作品的著作权均为本人所拥有,本人保留所有法定权利。违者必究

对于需要复制、转载、链接和传播博客文章或内容的,请及时和本博主进行联系,留言,Email: ichinar@icloud.com

对于经本博主明确授权和许可使用文章及内容的,使用时请注明文章或内容出处并注明网址

相关文章
|
数据安全/隐私保护
runas的用法
今天同事的电脑安装了一个软件,运行时需要管理员权限,因为是在域环境中,无法提供管理员权限,这种情况可以用到runas。runas命令就是可以在A账户中用B账户运行某个软件。 runas /user:用户名 软件路径 在了解了runas用法后,我先在CMD中输入命令 需要输入账户密码 输入密码成功后就可以运行软件了,检查一下,是以这个用户运行的软件 后来想想运行这个命令每次都要输入管理员密码,这就没什么效果了。
2370 0
|
8月前
|
测试技术 API
harfbuzz 的用法
HarfBuzz 整形 API 的核心是函数。此函数采用一种字体,即 包含一串 Unicode 代码点的缓冲区和 (可选)字体功能列表作为其输入。它取代了 缓冲区中的代码点,其中包含来自 字体,正确排序和定位,以及任何 应用的可选字体功能。hb_shape()
227 0
|
8月前
/与%,%与/的用法
/与%,%与/的用法
138 0