Unity停用层级父物体时UI Button未消失问题咨询
Unity主菜单对象禁用后UI未正常隐藏问题
现有层级结构
MainMenu (空游戏对象) ↳ Canvas ↳ PlayButton (搭载TextMeshPro的按钮组件)
实现逻辑与预期目标
- 预期效果:点击PlayButton时停用层级中的MainMenu对象,同步隐藏其子物体Canvas及Canvas下挂载的PlayButton
- 实现配置:将MainMenu对象引用绑定到按钮的
OnClick()回调事件,配置触发规则为点击时调用GameObject.SetActive方法,将目标对象设为false
异常现象
- 点击按钮后,编辑器内Hierarchy面板中MainMenu层级已显示为灰色禁用状态,但按钮仍停留在界面上,且保持黄色的Highlighted高亮状态
- 仅在Play运行模式下修改显示分辨率(疑似强制触发画布刷新)时按钮才会消失,停用MainMenu对象未触发正常的界面刷新逻辑
- 已尝试的修复操作:直接对PlayButton、Canvas本身调用
SetActive(false),或是将上述对象的enabled属性设为false,按钮的异常显示表现完全一致
依据公开开发资料,调用
SetActive(false)本应隐藏对应游戏对象,目前暂无法排查出问题根因。
内容的提问来源于stack exchange,提问作者Zebbeni
相关产品推荐
相关产品推荐

