本文转自博文http://blog.163.com/mei_xiajinyi/blog/static/24262507820154193418494,感谢博主分享
Input.touchCount 触摸随之增长 一秒50次增量
Input.GetTouch(0).phase == TouchPhase.Moved
手指滑动中最后一针滑动的状态是运动的
TouchPhase 触摸的几个状态
Began 手指已触摸屏幕
Moved 手指在屏幕上移动
Stationary 手指触摸屏幕,但是并没有移动
Ended 手指从屏幕上移动,这是一个触摸的最后状态
Canceled 系统取消跟踪触摸,如用户把屏幕放到他的脸上或超过五个接触同时发生。这是一个触摸的最后状态
Touch.deltaPosition 增量位置 (Input.GetTouch(0).deltaPosition)最后一帧滑动的值,只返回xy 轴坐标 也可用vector3(z轴为0)所以一般用vector2接受
void Update()
{
if(Input.touchCount > 0)
{
Debug.Log(Input.touchCount);
}
}
touchCount 是触摸帧的数量
int fing = 0;
void Update()
{
foreach (Touch a in Input.touches)
{
if(a.phase != TouchPhase.Ended && a.phase != TouchPhase.Canceled)
{
fing ++;
}
}
}
3.让cube 随着touch 移动代码
int count = 0;
Vector3 touchposition = Vector3.zero;
public GameObject cube;
void Update()
{
if (Input.touchCount > 0)
{
count += Input.touchCount;
Debug.Log(count);
}
if(Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Moved)
{
touchposition = Input.GetTouch(0).deltaPosition;
cube.transform.Translate(touchposition.x * 0.01f,touchposition.y * 0.01f,0f);
}
}