位置: 编程技术 - 正文

cocosdx让AppDelegate支持全局更新机制

编辑:rootadmin
众所周知, cocos2d里面强大的更新函数schedule是基于实体框架存在的, 就比如说你创建了一个ccnode, 且必须加入到场景中, 才能支持schedule功能. 而在总的

推荐整理分享cocosdx让AppDelegate支持全局更新机制,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

AppDelegate中无法使用这个方法来实现, 那么cocos2d有无直接调用的方法呢?

答案当然是有:

在任何位置调用

CCDirector::sharedDirector()->getScheduler()->scheduleSelector

就可以实现类&#;ccnode的schedule功能, 静态调用, 很方便

那么如何来让AppDelegate支持呢?

cocosdx让AppDelegate支持全局更新机制

在AppDelegate加入引用CCObject

#include "CCObject.h"

并且另扩展支持ccobject, 因为在scheduleSelector方法中, 对象必须是CCObject类型

class AppDelegate : private cocos2d::CCApplication ,private cocos2d::CCObject

然后只需要设置响应的方法对象和时间就好了, 最后一个参数是isPaused, 是否暂停, 当然不了, 执行它吧

CCDirector::sharedDirector()->getScheduler()->scheduleSelector(schedule_selector(AppDelegate::loopUpdate),this, ,false);

上面的这句话是执行指定方法在每秒时

编程就是这么简单

让一切都停下来——Unschedule HelloWorldScene.h:HelloWorldScene.cpp(修改的部分代码):运行项目,可发现每一帧都会调用update()函数,而每隔两秒都会调用一次MyUpdate()函数如果要取消update函

触发器——scheduleOnce HelloWorldScene.h:HelloWorldScene.cpp(部分修改代码):以调试模式运行项目后,可以发现,隔2s之后会调用cookFinish函数,而且只会调用一次

addObserver和postNotification函数传递函数的区别 上一篇文章中,我们利用addObserver来订阅消息,用postNotification来发布消息,但是有一点要注意的是,addObserver和postNotification都可以传递一个CCObject数据,

本文链接地址:https://www.jiuchutong.com/biancheng/368986.html 转载请保留说明!

上一篇:cocos2dx里访问调用Android函数(cocos2dx scrollview)

下一篇:让一切都停下来——Unschedule(让一切停留在最美好的时光)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络