Unity 3D界面按钮在移动设备上不起作用。

3
几天来我遇到了一个奇怪的问题,当我在移动设备上构建和运行我的游戏时,我的按钮不起作用,尽管它们在编辑器中正常工作。更让人惊讶的是,只有放置在实际游戏关卡中的按钮不起作用,菜单屏幕上之前的所有按钮都能正常工作。
这个问题只在几天前开始出现,在此之前并不存在这样的问题。我通过首先使用方向“左横屏”构建游戏,然后再使用“自动旋转”构建游戏,并在播放器设置中选中“左横屏”复选框或者反之亦然来解决了这个问题。这将使按钮在移动设备上再次起作用。但今天我构建了第二关时发现,虽然我让它在第一关中正常工作,但这个问题也出现在第二关中。
这让我疯狂,我不知道该怎么办。菜单和游戏关卡之间唯一的区别是,在游戏关卡中,我正在使用某些对象使用Instantiate来放置物体。
是的,我已经检查过我已经在关卡上放置了EventSystem,并在画布上放置了GraphicsRaycaster脚本。
您有什么想法吗?

1
这里很难诊断,您能否扩展您的问题,包括层次结构和检查器的示例代码和/或截图。请确保将画布渲染模式设置为“屏幕空间 - 摄像机”。 - Rob
1
在一个项目中,我的UI按钮在编辑器中可以工作,但在Android设备上无法工作。在搜索“IsPointerOverGameObject()”函数的问题后,我的问题得到了解决。 下面的页面帮助我解决了这个问题。我希望它对你有用。https://answers.unity.com/questions/1115464/ispointerovergameobject-not-working-with-touch-inp.html - PedPak
2个回答

0
好的,我找到了问题所在。我在一个画布内使用了另一个画布,并且两个画布都应用了射线投射脚本。从子画布中删除射线投射脚本似乎解决了这个问题。

0
如果有人需要帮助,我遇到了类似的问题。我正在使用代表每个选项卡的父变换来实现选项卡式用户界面(这样我可以轻松地通过选项卡激活/停用)。在 Android 上运行时,任何不是画布的直接子级别(例如选项卡下的一个按钮)的按钮都无法点击。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接