请问可以设置节点默认active是false吗

请问可以将节点active默认设置成false吗,这样在编辑器中默认看不到,通过程序显示隐藏。
目前有一个全局弹层,会把所有节点遮挡,但这个弹层只有游戏结束后会显示,开发的时候还要先把这个弹层关闭。

节点属性面板上有个勾,取消勾选

1赞

这个是节点Active的可视化控制

谢谢,但是在打包的时候不勾选这个,执行active=true后没有效果,请问打包的时候必须再勾选是吗?这个很容易忘掉。

谢谢,请问打包的时候必须再勾选是吗?这个很容易忘掉。

不需要 你检查一下 node.active =true为何不行吧
估计是 node没有找到吧!

不是的,弹层是游戏暂停展示,如果不勾选,第一次点击暂停按钮后不会出现,再点击一次才会出现。

没有效果的原因很多,我就列举几个:
1、最简单的就是检查弹层上方是否被某些UI遮挡了,实际显示了但表现为没显示;
2、节点控制的是否是弹层;
3、弹层父级节点以及以上节点是否存在Active为false的问题,也会导致弹层的显示失效。

假设你的弹层是maskNode,然后在父脚本里面有maskNode.actice = false
maskNode绑定了一个脚本maskScript.
在maskScript里面的onLoad里面有一个this.node.active = false ,onEnable里面做了显示一些数据的操作

原因就是你在父层时候执行了maskNode.active = false 导致maskNode未激活
你第一次执行maskNode.active = true 时候,在 maskScript的onLoad 时候执行了this.node.active = false 导致不显示这个maskNode,然后你第二次点击执行maskNode.active = true时候, 由于第一次已经载入了,就不再执行onLoad阶段了.就能正常显示了.

我遇到的情况是这样的.

万分感谢,我看下

万分感谢,我研究下。

万分感谢,是这样的