标签:component onload const ref rip 点击 新建 激活 调用
版本:2.3.4
参考:
cocos教程:生命周期回调
cocos的cc.Component组件有如下生命周期
一 新建一个组件商店面板 new ShopPanel(),注意:1. 此时无法通过cc.find等获取商店里的其他节点
construct
二 添加组件到舞台 addChild(shopPanel.node),注意:1.此时可以通过cc.find等获取商店里的其他节点
onLoad
onEnable
start
update
lateUpdate
三 组件从舞台移除 removeChild(shopPanel.node)
onDisable
四 再次添加组件到舞台,addChild(shopPanel.node) ,注意:1. onLoad和start不会再触发。2. shopPanel里监听的点击事件无效了,例如onEnable里的this.node.on(cc.Node.EventType.TOUCH_END,()=>{},this);
onEnable
update
lateUpdate
五 shopPanel.enabled = false, 设置组件eui.Component的enabled,注意:1.不会再调用update,lateUpdate
onDisable
六 shopPanel.enabled = true
onEnable
update
lateUpate
七 shopPanel.node.active = false, 设置组件节点cc.Node的active, 注意:1. 和enabled区别是active=false时cc.Node会被隐藏,舞台上不显示商店面板了。
2.如果只是想隐藏商店,但是继续执行update,可以使用shopPanel.node.opacity = 0隐藏,shopPanel.node.opacity = 255显示
onDisable
八 shopPanel.node.active = true
onEnable
update
lateUpdate
九 shopPanel.node.destroy。 注意:1. destroy调用后不会立即销毁,在当前逻辑帧更新后统一销毁。可以通过cc.isValid判断该组件是否可用。
onDisable
onDestroy
标签:component onload const ref rip 点击 新建 激活 调用
原文地址:https://www.cnblogs.com/gamedaybyday/p/13344334.html