[LayaAirIDE 2.0]2.0UI的生命周期感觉有问题


BUG1.png

这个是官方给的UI的生命周期  然后经过我一段时间开发下来 发现此图毫无意义。 
 
打开UI Laya.Scene.open(xxx.scene)  这是我打开xxx.scene 代码执行顺序是 构造器函数-onAwake-onEnable   然后我关闭 Laya.Scene.close(xxx.scene) 再次打开它Laya.Scene.open(xxx.scene) 代码执行顺序仍然是 构造器函数-onAwake-onEnable 
 
也就是说 每次open这个UI 都会重新NEW 也会重新执行构造激活。    
比如我有个会频繁打开的UI,我只想NEW一次,然后每次打开都只是改变其中的数据,也就是每次打开只执行onEnable。 这样就无法实现。 
 
按照官方给的图的意思 应该是  open是打开  close是关闭  destroy才是销毁  销毁再打开才是创建   onAwake永久只会执行一次  
建议官方进行修改,不然极大的干扰了代码设计。  
已邀请:

layabox

赞同来自:

首先,这个不是UI生命周期图,是组件生命周期。
其次,这个和复用没关系,如果想复用,可以通过设置对象的renderType=instance即可

看着

赞同来自:

onUpdate也有问题,我在开发的时候用onUpdate会感觉到有卡顿,但是改用frameLoop就解决了,感觉onUpdate并没有每帧都调用

该问题目前已经被锁定, 无法添加新回复

商务合作
商务合作