Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/grails/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Unity2D:即使点击画布上的一个按钮,使用触摸屏平移地图仍然会注册_C#_Unity3d_Unityscript - Fatal编程技术网

C# Unity2D:即使点击画布上的一个按钮,使用触摸屏平移地图仍然会注册

C# Unity2D:即使点击画布上的一个按钮,使用触摸屏平移地图仍然会注册,c#,unity3d,unityscript,C#,Unity3d,Unityscript,当按下HUD中的按钮时,取消应用程序的平移功能时出现问题 我们使用画布来显示UI,因此我无法使用光线投射来检测触摸是否击中按钮,因为按钮并不直接位于要平移的地图所在的世界中 我已经在按钮中添加了collider,并尝试打印由raycast命中的对象的名称,但它只是通过按钮,就像它们不在那里一样 我该如何检测画布中的按钮是否被触摸,以便取消执行平移功能?检查EventSystem的方法。您可以这样使用它: public bool IsPointerOverUI { get{

当按下HUD中的按钮时,取消应用程序的平移功能时出现问题

我们使用画布来显示UI,因此我无法使用光线投射来检测触摸是否击中按钮,因为按钮并不直接位于要平移的地图所在的世界中

我已经在按钮中添加了collider,并尝试打印由raycast命中的对象的名称,但它只是通过按钮,就像它们不在那里一样

我该如何检测画布中的按钮是否被触摸,以便取消执行平移功能?

检查EventSystem的方法。您可以这样使用它:

public bool IsPointerOverUI
{
    get{
        return EventSystem.current.IsPointerOverGameObject();
    }
}
不要忘记导入
UnityEngine.EventSystems