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 服务器配置、运行、建站一条龙 !




" role="presentation" style="position: relative;">

Chinar


END

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


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


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

EasyTouch基本用法的更多相关文章

  1. EasyTouch中多种QuickGesture手势检测

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

  2. Unity插件研究-EasyTouch V5

    抽空研究了下Easy Touch 5插件,发现确实很好用,下面是相应的用法: 1. Easy Touch Controls:实现虚拟摇杆的组件 在项目的"Hierarchy"窗口下 ...

  3. EditText 基本用法

    title: EditText 基本用法 tags: EditText,编辑框,输入框 --- EditText介绍: EditText 在开发中也是经常用到的控件,也是一个比较必要的组件,可以说它是 ...

  4. jquery插件的用法之cookie 插件

    一.使用cookie 插件 插件官方网站下载地址:http://plugins.jquery.com/cookie/ cookie 插件的用法比较简单,直接粘贴下面代码示例: //生成一个cookie ...

  5. Java中的Socket的用法

                                   Java中的Socket的用法 Java中的Socket分为普通的Socket和NioSocket. 普通Socket的用法 Java中的 ...

  6. [转载]C#中MessageBox.Show用法以及VB.NET中MsgBox用法

    一.C#中MessageBox.Show用法 MessageBox.Show (String) 显示具有指定文本的消息框. 由 .NET Compact Framework 支持. MessageBo ...

  7. python enumerate 用法

    A new built-in function, enumerate() , will make certain loops a bit clearer. enumerate(thing) , whe ...

  8. [转载]Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法总结

    本文对Jquery中$.get(),$.post(),$.ajax(),$.getJSON()的用法进行了详细的总结,需要的朋友可以参考下,希望对大家有所帮助. 详细解读Jquery各Ajax函数: ...

  9. 【JavaScript】innerHTML、innerText和outerHTML的用法区别

    用法: <div id="test">   <span style="color:red">test1</span> tes ...

随机推荐

  1. 音视频学习系列第(三)篇---wav文件的存储和解析

    音视频系列 什么是wav wav是一种无损的音频文件格式,wav文件有两部分,第一部分是文件头,记录一些重要的参数信息,如音频的采样率,通道数,数据位宽,第二部分是数据部分,数据部分可以是PCM,也可 ...

  2. windows批处理命令

    前言 批处理文件(batch file)包含一系列 DOS命令,通常用于自动执行重复性任务.用户只需双击批处理文件便可执行任务,而无需重复输入相同指令.编写批处理文件非常简单,但难点在于确保一切按顺序 ...

  3. response.sendRedirect跳转 jsp:forward跳转

    response.sendRedirect跳转 <% response.sendRedirect("online.jsp"); %> jsp:forward跳转 < ...

  4. LeetCode--122--卖卖股票的最佳时机II

    问题描述: 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格. 设计一个算法来计算你所能获取的最大利润.你可以尽可能地完成更多的交易(多次买卖一支股票). 注意:你不能同时参与多笔交易( ...

  5. 20170719xlVBASmartIndent

    Public Sub SmartIndenterProcedure() Dim OneComp As VBComponent Dim StartLine As Long, EndLine As Lon ...

  6. Population Size CodeForces - 416D (贪心,模拟)

    大意: 给定$n$元素序列$a$, 求将$a$划分为连续的等差数列, 且划分数尽量小. $a$中的$-1$表示可以替换为任意正整数, 等差数列中必须也都是正整数. 贪心策略就是从前到后尽量添进一个等差 ...

  7. Non-parseable POM 解决方法

     两个build放在一起当然不行,把它们类似这样的合并起来.

  8. angularjs 中的scope继承关系——(1)

    转自:http://www.lovelucy.info/understanding-scopes-in-angularjs.html JavaScript 的原型链继承 假设父类 parentScop ...

  9. Win32.com安装

    Win32.com安装     http://sourceforge.net/projects/pywin32/files/pywin32     

  10. PHP:第四章——PHP数组添加,删除,插入,分割,合并,及运算符

    <pre> <?php header("Content-Type:text/html;charset=utf-8"); /*知识点一:赋值运算符 = 代码示例:数 ...