层(Layer)的生命周期函数有例如以下:

init()。初始化层调用。

onEnter()。进入层时候调用。

onEnterTransitionDidFinish()。

进入层并且过渡动画结束时候调用。

onExit()。退出层时候调用。

onExitTransitionDidStart()。退出层并且開始过渡动画时候调用。

cleanup()。

层对象被清除时候调用。

提示 层(Layer)继承于节点(Node),这些生命周期函数根本上是从Node继承而来。其实全部Node对象(包含:场景、层、精灵等)都有这些函数。仅仅要是子类化这些类都能够重写这些函数,来处理这些对象的不同生命周期阶段事件。

我们重写HelloWorld层的中几个生命周期函数,代码例如以下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
bool HelloWorld::init()
{          
    if( !Layer::init() )
    {
         returnfalse;
    }
  
    log("HelloWorldinit");
    ......
    returntrue;
}
  
void HelloWorld::onEnter()
{
    Layer::onEnter();
    log("HelloWorldonEnter");
}
  
voidHelloWorld::onEnterTransitionDidFinish()
{
    Layer::onEnterTransitionDidFinish();
    log("HelloWorldonEnterTransitionDidFinish");
}
  
void HelloWorld::onExit()
{
    Layer::onExit();
    log("HelloWorldonExit");
}
  
voidHelloWorld::onExitTransitionDidStart()
{
    Layer::onExitTransitionDidStart();
    log("HelloWorldonExitTransitionDidStart");
}
  
void HelloWorld::cleanup()
{
    Layer::cleanup();
    log("HelloWorldcleanup");
}

注意 在重写层生命周期函数中,第一行代码应该是调用父类的函数。比如HelloWorld::onEnter()中第一行应该是Layer::onEnter()函数,假设不调用父类的函数可能会导致层中动画、动作或计划无法运行。

假设HelloWorld是第一个场景,当启动HelloWorld场景时候,它的调用顺序例如以下图所看到的:

本文转自mfrbuaa博客园博客,原文链接:http://www.cnblogs.com/mfrbuaa/p/4759382.html,如需转载请自行联系原作者

Cocos2d-x场景功能描述的生命周期相关推荐

  1. android 锁屏的生命周期_Activity的生命周期的七个场景

    简单介绍Activity生命周期经常调用的几个方法: onCreate()与onDestroy() Activity的创建与销毁,处于Activity的entire lifetime完整生命周期 on ...

  2. Unity中场景生命周期的监听: EditorSceneManager

    本文分享Unity中场景生命周期的监听: EditorSceneManager 在Unity开发中, 有时我们需要在场景的某些生命周期时做一些特定的操作, 特别是在Editor模式下的一些工具代码. ...

  3. 重温Android四大组件(一)—Activity的生命周期

    前言 四大组件对于Android开发者是老生常谈的知识了,相信每个Android开发者对四大组件都已经很熟悉了.但是四大组件作为Android应用的基础,作为开发者不仅要熟悉而且要烂熟于心. 这里以& ...

  4. PPT 下载 | 神策数据孙文亮:客户全生命周期管理从方法到实践全解析

    在以"场景赋能·驱动有数"为主题的神策 2018 数据驱动大会现场,神策数据技术经理孙文亮发表了名为<客户全生命周期管理从方法到实践>的主题演讲. 温馨提示:点击文末阅 ...

  5. 华星速充 | 为新能源汽车提供全生命周期充放电服务

    据工信部<新能源汽车产业发展计划(2021~2035)>估计到2030年,我国新能源汽车保有量将到达6420万辆,依照车桩比1:1的扶植方针,充电桩扶植存在约6300万台的缺口,估计将构成 ...

  6. Android全面解析之Activity生命周期

    前言 很高兴遇见你~ 欢迎阅读我的文章. 关于Activity生命周期的文章,网络上真的很多,有很多的博客也都讲得相当不错,可见Activity的重要性是非常高的.事实上,我猜测每个android开发 ...

  7. Activity与调用线(三):Activity生命周期源码解析

    前言 很高兴遇见你~ 欢迎阅读我的文章. 关于Activity生命周期的文章,网络上真的很多,有很多的博客也都讲得相当不错,可见Activity的重要性是非常高的.事实上,我猜测每个android开发 ...

  8. 从数据备份保护到完整生命周期管理平台,爱数全新发布 AnyBackup Family 8

    编辑 | 宋慧 出品 | CSDN 云计算 从2003年创业,开始做数据备份技术,爱数已经走过了近20年的时间.现在,数据的价值被越来越多的业界与用户看到,数据分析应用赛道近年一直持续火热.而现在的爱 ...

  9. 18_Android中Service的生命周期,远程服务,绑定远程服务,aidl服务调用,综合服务案例,编写一个应用程序调用远程支付宝远程服务场景

    ============================================================================ 服务的生命周期: 一.采用start的方式开始 ...

最新文章

  1. 《敏捷可执行需求说明 Scrum提炼及实现技术》—— 1.1 从解决方案中甄别需求...
  2. 生产订单新增按钮没权限
  3. 什么是ATM(异步传输模式)?—Vecloud微云
  4. springboot源码分析之环境属性构造过程1
  5. 10 分钟学会 5 个酷炫 Linux 命令
  6. 极速pdf编辑器的水印如何去掉_如何修改PDF?有没有详细的PDF编辑器操作方法?...
  7. WEB页面的生命周期,DOMContentLoaded,load,beforeunload,unload
  8. bootstrap table入门例子
  9. 值得一生收藏的网站资源 没用过就太可惜了
  10. layui数据可视化_空间数据可视化 GEOM
  11. Ubuntu版本进化史 4.10-7.04
  12. java string 日期格式_Java 日期格式和String 转换
  13. Tensorflow训练渐渐变慢,迭代一段时间卡死
  14. 天天生鲜项目——登录页面
  15. CentOS8 安装 telnet 命令
  16. 2022年《社区护理学》 试题及答案
  17. 基于压缩传感的脉冲GPR成像技术研究(硕士学位论文初稿20120104)
  18. ubuntu20.04 ros 采集velodyne激光雷达数据
  19. android 使用Path实现涂鸦效果
  20. ckeditor富文本编辑器的使用和图片上传,复制粘贴图片上传

热门文章

  1. CSS3 移动端开发技巧
  2. Python内置函数总结
  3. mysql 1.42_MySQL索引(一)
  4. php面试编程题_一位资深php程序员在北京的面试30个题目
  5. 7-65 藏头诗 (15 分)
  6. linux和android学习,android学习笔记
  7. vant 引进单个样式_vue 公共列表选择组件,引用Vant-UI的样式方式
  8. uboot kernel 博客
  9. SQL Server CTE 递归查询全解
  10. hibernate联合主键 注解方式