• 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()

      主要为了资源回收

    以上。

      

      

      

      

      

  • 相关阅读:
    定时任务 cron 学习
    [转]交换机互联不同 vlan 及不同网段通信问题总结
    H3C Cloud Lab配置不生效的解决办法
    使用NPTP+SecureCRT连接H3C Cloud Lab中的路由器
    postgresql 创建索引
    php多进程应用场景实例详解
    pcntl扩展学习
    Kubernetes进阶实战读书笔记:Daemonset控制器|Job控制器
    Kubernetes进阶实战读书笔记:资源需求及限制
    Kubernetes进阶实战读书笔记:POD对象的生命周期(探针检测)
  • 原文地址:https://www.cnblogs.com/ForrestCui94/p/12691863.html
Copyright © 2020-2023  润新知