【爱上cocos2d-x之十七】scheduleOnce定时器只调用一次
来源:互联网 发布:冰镇西瓜 知乎 编辑:程序博客网 时间:2024/05/01 09:41
发现定时器的功能还真是蛮强大的,但是如果我们现在有一个需求:希望在几秒之后调用一个函数,而不是每个几秒调用这个函数。
那么,我们这时可以利用scheduleOnce可以来完成,顾名思义,Once,你懂的。
首先,我们新建一个项目为HelloSchedule,打开头文件添加oneUpdate函数
class HelloWorld : public cocos2d::CCLayer{public: // Here's a difference. Method 'init' in cocos2d-x returns bool, instead of returning 'id' in cocos2d-iphone virtual bool init(); // there's no 'id' in cpp, so we recommend returning the class instance pointer static cocos2d::CCScene* scene(); // implement the "static node()" method manually CREATE_FUNC(HelloWorld);/* 回调函数 */void oneUpdate(float dt);};
打开cpp文件,添加代码如下:
// on "init" you need to initialize your instancebool HelloWorld::init(){ if ( !CCLayer::init() ) { return false; } /* 指定3秒之后执行一次函数 */this->scheduleOnce(schedule_selector(HelloWorld::oneUpdate),3.0f); return true;}void HelloWorld::oneUpdate(float dt){CCLOG("call oneUpdate once");}
在Debug模式下运行,效果如下:
3秒之后,仅仅看到这一条。
到这里为止,我们通过4篇简短的文章把定时器介绍完了。
0 0
- 【爱上cocos2d-x之十七】scheduleOnce定时器只调用一次
- 【爱上cocos2d-x之十五】定时器schedule调用自己的函数
- 【爱上cocos2d-x之十六】取消定时器unSchedule
- Cocos2d-x三种定时器的使用schedule,scheduleUpdate,scheduleOnce
- cocos2d-x 定时器scheduleOnce函数修改,增加一个void*参数,实现数据传递
- 【爱上cocos2d-x之五】场景CCScene
- 【爱上cocos2d-x之四】导演CCDirector
- 【爱上cocos2d-x之六】层CCLayer
- 【爱上cocos2d-x之七】精灵CCSprite
- 【爱上cocos2d-x之十】动作Action
- 【爱上cocos2d-x之十二】数据结构CCArray
- 【爱上cocos2d-x之十三】数据结构CCString
- 【爱上cocos2d-x之十四】每一帧都调用,scheduleUpdate和update
- 【玩转cocos2d-x之十七】cocos2d-x中文显示
- 【玩转cocos2d-x之十七】cocos2d-x中文显示
- cocos2d-x 3.x之定时器
- 【爱上cocos2d-x之三】游戏的构成
- AngularJS 内置服务 ~ $timeout设置定时器(只调用一次)
- 精心收集的Hadoop学习资料(持续更新)
- 多分支实现以及scanf读取错误解决(代码健壮性以及扩展性)
- sprintf() 格式化输出函数
- ios多线程编程的几个链接
- 如何安全的Include文件
- 【爱上cocos2d-x之十七】scheduleOnce定时器只调用一次
- Hadoop 新 MapReduce 框架 Yarn 详解
- js 添加到收藏夹
- 新人第一次来C博客
- 排序算法实现
- ADF 创建主表子表的先后顺序
- Experience on Namenode backup and restore --- checkpoint......
- 配置Oracle RAC时修改/etc/hosts文件的注意事项
- MyEclipse从数据库反向生成实体类之Hibernate方式 反向工程