Touch类的信息只能在移动端(触摸屏)上能够获取,在编辑器上是不能获取到的。因此,为了方便测试,可以打包apk后在模拟器上跑:

unity打包apk:https://www.jianshu.com/p/3c67fbfbb67c

一.常用api

1.Input.touches:返回上一帧中所有的触摸信息。每一条触摸信息代表着一只手指在屏幕上的触碰状态。因为是一帧的触摸信息,所以建议在Update中调用。长度为1时,表示1只手指在屏幕上,如此类推。

2.Input.GetTouch:返回指定的一条触摸信息。一般传0,表示返回第一条触摸信息,即在屏幕上的第一只手指的触摸信息。

3.TouchPhase:触摸状态。其取值为:Began(手指开始触摸屏幕)、Moved(手指在屏幕上移动)、Stationary(手指触摸屏幕,但并没有移动)、Ended(手指从屏幕上移开。这是一个触摸的最后状态)、Canceled(系统取消跟踪触摸,如用户把屏幕放到他脸上或超过五个接触同时发生(个数根据平台而定)。这是一个触摸的最后状态)

二.测试

代码如下:

 using System.Collections.Generic;
using UnityEngine; public class TestTouch : MonoBehaviour { private string touchesStr;//当前记录
private List<string> logList = new List<string>();//历史记录
private Vector2 scrollPosition = Vector2.zero; private void Update()
{
Touch[] touches = Input.touches;
touchesStr = string.Format("Input.touches({0}):", touches.Length); for (int i = ; i < touches.Length; i++)
{
Touch touch = touches[i];
string pos = touch.position.ToString();
string phase = touch.phase.ToString();
string content = string.Format("{0},{1}", pos, phase);
touchesStr = touchesStr + content;
} if (touches.Length > )
{
AddLog(touchesStr);
}
} private void OnGUI()
{
GUILayout.Label(touchesStr); scrollPosition = GUILayout.BeginScrollView(scrollPosition, true, true, GUILayout.Width(Screen.width), GUILayout.Height(Screen.height / ));
for (int i = ; i < logList.Count; i++)
{
GUILayout.Label(logList[i]);
}
GUILayout.EndScrollView(); if (GUILayout.Button("清除log"))
{
ClearLog();
}
} void AddLog(string str)
{
logList.Add(str);
} void ClearLog()
{
logList = new List<string>();
}
}

1.点击

2.拖拽

[Unity移动端]Touch类的更多相关文章

  1. H5案例分享:移动端touch事件判断滑屏手势的方向

    移动端touch事件判断滑屏手势的方向 方法一 当开始一个touchstart事件的时候,获取此刻手指的横坐标startX和纵坐标startY: 当触发touchmove事件时,在获取此时手指的横坐标 ...

  2. C# 网络通信大小端转换类

    本篇文章主要介绍了"C# 网络通信大小端转换类" using System;namespace Framework.NetPackage.Common { /// <summ ...

  3. 原生 JS 实现移动端 Touch 滑动反弹

    什么是 Touch滑动?就是类似于 PC端的滚动事件,但是在移动端是没有滚动事件的,所以就要用到 Touch事件结合 js去实现,效果如下: 1. 准备工作 什么是移动端的 Touch事件?在移动端 ...

  4. 移动端 touch

    原文链接:http://caibaojian.com/mobile-touch-event.html 本文主要介绍 TouchEvent 相关的一些对象与属性如 Touch, TouchList, t ...

  5. Unity 移动端触摸屏操作

    Unity 触屏操作 当将Unity游戏运行到IOS或Android设备上时,桌面系统的鼠标左键可以自动变为手机屏幕上的触屏操作,但如多点触屏等操作却是无法利用鼠标操作进行的.Unity的Input类 ...

  6. 移动端touch实现下拉刷新

    移动端实现下拉刷新 第一部分:四个touch事件 1.touchstart:只要将手指放在了屏幕上(而不管是几只),都会触发touchstart事件. 2.touchmove: 当我们用手指在屏幕上滑 ...

  7. 【Unity】10.1 类人动画的导入和设置

    分类:Unity.C#.VS2015 创建日期:2016-05-02 一.制作或购买类人模型 为了充分使用 Mecanim 类人动画系统和类人动画的动画重定位功能,需要先使用其他3D建模软件(例如3d ...

  8. Unity 移动端的复制这么写

    游戏上线很久了,有些玩家慢慢就流失了,为了让刚流失的玩家再度回归所以做了召回功能!如果一个200级的玩家10天没上线且成功召回的,就会给予召回玩家丰厚的奖励! Q:那如何召回这个流失的玩家呢? A:召 ...

  9. 原生js移动端touch事件实现上拉加载更多

    大家都知道jQuery里没有touch事件,所以在移动端使用原生js实现上拉加载效果还是很不错的,闲话不多说,代码如下: //获取要操作的元素 var objSection = document.ge ...

随机推荐

  1. Uedit编辑器编辑Velocity

    1.切换到源代码模式 UM.getEditor('editor').execCommand("source"); 2.给编辑器插入Velocity源码 $(".edui- ...

  2. Delphi跨进程访问DBGRID

    要想跨进程访问DBGRID,貌似只能用HOOK,写一个DLL想办法注入到目标进程.注入成功后,使DLL与目标进程在同一进程空间中(其内有一些细节问题,请参见代码),这时可以访问目标进程的VCL组件.并 ...

  3. 移动互联网终端的touch事件,touchstart, touchend, touchmove 很棒的文章

    转载请注明: 转载自WEB前端开发(www.css119.com)-关注常见的WEB前端开发问题.最新的WEB前端开发技术(webApp开发.移动网站开发).最好的WEB前端开发工具和最全的WEB前端 ...

  4. 【巷子】---redux---【react】

    一.flux的缺陷 因为dispatcher和Store可以有多个互相管理起来特别麻烦 二.什么是redux 其实redux就是Flux的一种进阶实现.它是一个应用数据流框架,主要作用应用状态的管理 ...

  5. Myeclipse 2017安装

    一.下载 Myeclipse官网下载地址:http://www.myeclipsecn.com/download/ 二.安装 安装详细步骤省略,仅仅是一路下一步即可,博主默认安装到了C盘,注意:安装完 ...

  6. Python开发经验汇总

    1.工具 (1)编代码用“JetBrains PyCharm”: (2)要想编写的脚本能够直接双击运行,还需要用pyinstaller打包工具: (3)要下载pyinstaller就用Python自带 ...

  7. 黄聪:wordpress如何携带cookie模拟浏览器访问网站

    $args = array( 'user-agent' => 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, li ...

  8. react的echarts BizCharts

    react BizCharts react的饼图,折线图 点击进入官网 -> https://bizcharts.net/products/bizCharts/demo 如果你在这遇到了问题,欢 ...

  9. 关于socket阻塞与非阻塞情况下的recv、send、read、write返回值---部分内容可能不确切,待讨论

    1.阻塞模式与非阻塞模式下recv的返回值各代表什么意思?有没有区别?(就我目前了解阻塞与非阻塞recv返回值没有区分,都是 <0:出错,=0:连接关闭,>0接收到数据大小,特别:返回值  ...

  10. Eclipse/MyEclipse向HDFS中如创建文件夹等操作报错permission denied解决办法

    不多说,直接上干货! 问题现象 当执行创建文件的的时候, 即: String Path = "hdfs://host2:9000"; FileSystem fileSystem = ...