您的位置:首页 > 移动开发 > Unity3D

Unity Android手机触屏事件

2016-08-22 11:51 197 查看
一: 下面先说经常用的三个事件  手指按下、手指移动、手指松开
1.  手指按下
if(input.touchCount==1)
{
if(input.touches[0].phase==TouchPhase.Beagn)
{
// 手指按下时,要触发的代码
}​​​​​​​

2.  手指在屏幕上滑动
if(input.touchCount==1)
{
if(input.touches[0].phase==TouchPhase.Move)
{
// 手指滑动时,要触发的代码
float s01=Input.getAxis("Mouse X");    //手指水平移动的距离
float s02=Input.getAxis("Mouse Y");    //手指垂直移动的距离
}​​​​​​​

3.  手指在屏幕上松开时
​   if(input.touches[0].phase==TouchPhase.Ended)&&                        Input.touches[0].phase!=TouchPhase.Canceled  ​​

二: 上面介绍的是单手指触发事件,下面介绍的是多手指触发事件
if(touchCount==2)   //代表有两个手指
{
if(Input.getTouch(0).phase==TouchPhase.Moved&&    //第一个手指                  Input.getTouch(1).phase==TouchPhase.Moved)            //第二个手指
{
vecter3 s1=input.getTouch(0).position;         //第一个手指屏幕坐标
vecter3 s2=input.getTouch(1).position;         //第二个手指屏幕坐标
newdis=Vecter2.distance(s1,s2);
if(newdis>olddis)             //手势外拉
{
distance+=Time.deltaTime*50f;
}
if(newdis
{
distance-=Time.deltaTime*50f;
}
olddis=newdis;
}
}
​​​​​​​​​​​​​​
总结:
1.  不管是触屏事件还是PC端的事件,世界转屏幕还是屏幕转世界以及射线检测都是管用的
2.  安卓端的手指坐标(Input.touches[0].position)等同于PC端的鼠标屏幕坐标
(Input.mousePosition)

​FR:徐海涛(Hunk Xu)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android unity