Touch

原创 2013年12月04日 20:58:29

Input.touchCountstatic int touchCount;
Description

Number of touches. Guaranteed not to change throughout the frame. (Read Only)

PC上不能触摸,所以这个值总是为0。在小米手机上,经本人测试,为触摸在屏幕上的手指数量。所以我们一般要在检测触摸事件前加上一句判断

if(Input.touchCount>0)
{
    if(Input.GetTouch(0).phase==TouchPhase.Began)
    {
	oldloc=Input.GetTouch(0).position;
	touched=true;
    }
}

在PC上若没有if(Input.touchCount>0)这句判断,由于没有触摸事件,所以Input.touchCount始终为0,Input.GetTouch(0)将出错。

Input.touches
static Touch[] touches;

Description

Returns list of objects representing status of all touches during last frame. (Read Only) (Allocates temporary variables).

Each entry represents a status of a finger touching the screen.

返回所有触摸点信息的列表。返回值是一个数组,该数组的长度与Input.touchCount相同。

 

using UnityEngine;
using System.Collections;

public class Example : MonoBehaviour {
    void Update() {
        int fingerCount = 0;
        foreach (Touch touch in Input.touches) {
            if (touch.phase != TouchPhase.Ended && touch.phase != TouchPhase.Canceled)
                fingerCount++;
            
        }
        if (fingerCount > 0)
            print("User has " + fingerCount + " finger(s) touching the screen");
        
    }
}

Input.GetTouch

static Touch GetTouch(int index);
Description

Returns object representing status of a specific touch. (Does not allocate temporary variables).

返回Touch类,Touch类包含了对应index所对应的触摸状态信息。

Touch.fingerId

触摸的唯一标识。所有的触摸都在Input.touchs数组中,也可以使用Input.GetTouch函数和有效的数组索引来获取。然而,不能保证数组索引在两帧之间是相同的。fingerID却不同,它在不同帧之间总是指向同一个触摸。

All current touches are reported in theInput.touches array or by using theInput.GetTouch function with the equivalent array index. However, the array index is not guaranteed to be the same from one frame to the next. ThefingerID value, however, consistently refers to the same touch across frames. This ID value is very useful when analysing gestures and is more reliable than identifying fingers by their proximity to previous position, etc.

Touch.deltaPosition

自从上一次Update以来的触摸移动,可以用来实现游戏物体随触摸移动而一定。Touch.deltaTime则代表与delatPosition对应的时间段。触摸的绝对位置为Touch.position


	public GameObject panel;
	void Update()
	{
		if(Input.touchCount>0)
		{
			if(Input.GetTouch(0).phase==TouchPhase.Moved)
			{
				Vector2 deltaTouchDis=Input.GetTouch(0).deltaPosition;
				panel.transform.Translate(deltaTouchDis.x*0.01f,0,0);

The position delta since last change.

The absolute position of the touch is recorded periodically and available in theposition property. The deltaPosition value is a Vector2 that represents the difference between the touch position recorded on the most recent update and that recorded on the previous update. ThedeltaTime value gives the time that elapsed between the previous and current updates; you can calculate the touch's speed of motion by dividing deltaPosition.magnitude by deltaTime.

Linux中mkdir和touch命令区别

原文地址:http://www.cnblogs.com/zfyouxi/p/5371317.html 一、目的         本文将介绍linux下新建文件或文件夹、删除文件或文件夹...
  • tanga842428
  • tanga842428
  • 2016年10月19日 10:12
  • 20923

ios touch事件 点击事件

手指在屏幕上能达到的精度和鼠标指针有很大的不同。当用户触击屏幕时,接触区域实际上是椭圆形的,而且比用户想像的位置更靠下一点。根据触摸屏幕的手指、手指的尺寸、手指接触屏幕的力量、手指的方向、以及其它因素...
  • hufeill
  • hufeill
  • 2015年03月01日 14:29
  • 1748

关于Apple设备私有的apple-touch-icon属性详解

以前我们用过favicon在浏览器给网站进行身份标识,用法如下: 现今移动设备越来越多,苹果为iOS设备配备了apple-touch-icon私有属性,添加该属性,在iPhone,iPad,i...
  • freshlover
  • freshlover
  • 2013年07月12日 13:43
  • 35303

Easy Touch 5 Touchscreen Virtual Controls 5.0.17

  • 2017年12月27日 10:59
  • 12.81MB
  • 下载

iOS 为移动动画中的View添加touch事件

  • 2014年08月03日 15:31
  • 36KB
  • 下载

WINCE700_public_COMMON_oak_drivers_touch

  • 2014年07月31日 14:36
  • 60KB
  • 下载

掌握android Touch 系统

  • 2014年05月20日 19:26
  • 384KB
  • 下载

Android Touch事件传递机制解析

  • 2014年03月14日 17:38
  • 73KB
  • 下载

sencha touch sdk工具

  • 2014年03月04日 12:20
  • 46.42MB
  • 下载

利用touch触摸事件实现画板画画功能

  • 2014年12月12日 13:40
  • 28KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Touch
举报原因:
原因补充:

(最多只允许输入30个字)