您的位置:首页 > 产品设计 > UI/UE

UGUI判断鼠标或者手指是否点击在UI上

2015-09-23 16:31 591 查看
UI和3D场景同时都需要响应触摸事件,如果同时响应可能就会出现触摸UI的时候影响到了3D部分。为了解决这个问题在判断3D响应之前要先判断手指是否点击在UI上。 以前NGUI的时候都是自己来发送射线判断,现在UGUI好了系统提供了更为简便的方法。

using
UnityEngine;

using
UnityEngine.UI;

using
System.Collections;

using
UnityEngine.EventSystems;

public
class
NewBehaviourScript
:
MonoBehaviour
{

//
Use this for initialization

void
Start
()
{

}

void
Update()

{

if
(Input.GetMouseButtonDown(0)||(Input.touchCount
>0
&&
Input.GetTouch(0).phase
==
TouchPhase.Began))

{

#if IPHONE || ANDROID

if
(EventSystem.current.IsPointerOverGameObject(Input.GetTouch(0).fingerId))

#else

if
(EventSystem.current.IsPointerOverGameObject())

#endif

Debug.Log("当前触摸在UI上");

else

Debug.Log("当前没有触摸在UI上");

}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: