Unity Parent的SetActive()影响孩子吗?

时间:2018-06-21 12:09:32

标签: unity3d

我发现将父级设置为true时,该父级的子级都称为“ OnEnable”函数。即使孩子们已经全部设置为真。

即使设置为true,我也不想调用“ OnEnable”功能。

如何预防?

2 个答案:

答案 0 :(得分:2)

该特定gameObject的所有子代继承的

SetActive()行为。为了解决您的问题,您很可能必须重组GameObject层次结构。

答案 1 :(得分:2)

This documentation on execution order对您可能有用。

如果您不希望从设置为活动的父对象调用子对象中的逻辑,则可以将其从OnEnable中删除,然后将其连接到其他地方的自己的委托中。

StartAwake函数也将发生相同的事情。我个人会尝试找到一种方法来抽象一些代码,以确保子对象不依赖于父对象。