CocosCreator基本知识梳理_节点与组件_生命周期回调

Q: 什么是节点?

A:一言蔽之曰“cc.Node”

Q:什么是组件?

A:一言蔽之曰“cc.Component”

// 在我这个萌新看来,节点就是层级管理器中的东西,组件就是属性检查器里的东西我暂时这样去理解。

Q:生命周期回调函数的套路?

A:

大致流程:onLoad >>  onEnable >> start >> upDate >> onDisable >> onDistroy

汤师爷翻译:

  on: 开始

  load: 加载

  enable: 激活

  disable: 使...失去

  distroy: 毁灭

onLoad():

  节点首次激活时(比如所在的场景被载入);

  节点active属性从false变为true时

  初始化那些不常改变的属性

  // 比如《摘星星》里地平面实际高度groundY

onEnable()

  组件的enabled属性从false变为true时

  所在节点的active属性从false变为true时

  节点第一次被创建且enabled属性为true时,在onLoad()之后、start()之前

  编写中途节点或组件的状态改变时的处理逻辑

start()

  在组件第一次激活前,即第一次upDate()之前触发一次

  初始化一些经常变化的属性(例如计时器)

upDate(dt):

  每帧更新,用来处理逻辑

  dt = 上一帧到当前帧的时间间隔(ms||毫秒)

onDisable():

  组件的enabled属性从true变为false时

  所在节点的active属性从true变为false时

  可以发现它和onEnable()是一对儿的

onDistroy():

  组件或节点调用了 destroy()时激活,并在当前帧结束时统一回收组件

  场景切换或销毁时

  同时声明了onLoad()和onDistroy()时,它们总是成对被调用。

  意思是从组件初始 化到销毁这个过程里,它们要么都被调用,要么都不会被调用

  虽然都是成对儿的生命周期回调方法,这一点可是不同于onEnable()和onDisable()

  主要为了资源回收

以上。

  

  

  

  

  

(0)

相关推荐