layaAir的Scene继承Sprite,在laya3中场景包括Dialog和Scene,其中Dialog继承自Scene。
管理接口
我们关心的是打开和关闭场景,对此Scene中提供了Open和Close的静态方法。
其中Open方法的返回类型是Promise,打开场景时会先去加载(调用Load方法),加载成功后再调用Scene的内部open方法。
Close方法比较重要,如果我们未设置autoDestroyAtClosed,那么layaAir认为你是有意为之,场景仅仅只是removeSelf,而不会destroy。未destroy的场景LayaAir本身也会存放在Scene.unDestroyedScenes中。
所以如果你不是自己手动管理的场景,那么需要设置autoDestroyAtClosed为true,这个设置在场景的属性面板中直接勾选即可。
如果你想自己手动管理场景,则不需要设置,后续自己可以在合适的时候destroy亦可。
对于Dialog的管理方式,和Scene是一样的。我们要像对待Scene一样去对待Dialog。
需要特别说明的是,场景和场景中的节点被销毁后,他们身上绑定的事件会被清空,timer也不会执行(执行时判断destroyed属性)。
977

被折叠的 条评论
为什么被折叠?



