我正在创建一个游戏,我需要添加一个按钮,当你死了你可以从弹出菜单重启游戏。每当我尝试这样做时,按钮似乎无法工作或被按下,游戏也不会重新启动。我使用过代码
我还将它添加到我的按钮中并将其添加到"点击"
答案 0 :(得分:1)
您可能没有正确设置UI画布。
How to detect click/touch events on UI and GameObjects
在UI,2D对象(Sprite渲染器/任何2D对撞机)和3D对象(网格渲染器/任何3D对撞机)上未检测到任何点击:
A.检查您是否有EventSystem。没有EventSystem,它根本无法检测到点击次数。如果您没有,请自行创建。
转到GameObject ---> UI --->事件系统。如果它还不存在,这将创建一个EventSystem。如果它已经存在,Unity将忽略它。
B.具有UI组件的UI组件或GameObject位于Canvas下。这意味着Canvas必须是UI组件的父级。如果没有这个,EventSystem将无法运行,也无法检测到点击。
这仅适用于UI对象。它不适用于2D(精灵渲染器/任何2D碰撞器)或3D物体(网格渲染器/任何3D碰撞器)。
C.如果这是一个3D物体,则PhysicsRaycaster不会附加到相机上。确保将PhysicsRaycaster连接到相机。有关详细信息,请参阅上面的#6。
D.如果这是2D物体,则物理2DRaycaster未连接到相机。确保将Physics2DRaycaster连接到相机。有关详细信息,请参阅上面的#7。
E.如果这是一个UI对象,您希望使用接口函数(如OnBeginDrag,OnPointerClick,OnPointerEnter和#1中提到的其他函数)检测点击次数,那么带有检测代码的脚本必须附加到该UI对象上想要检测点击。
F.此外,如果这是一个想要检测点击次数的UI对象,请确保其前面没有其他UI对象。如果您想要检测到的那个UI前面有另一个用户界面点击,则会阻止该点击。
要验证这不是问题,请禁用“画布”下的每个对象,但要检测的对象除外,然后单击是否有效。