【爱上Cocos2d-x之十七】scheduleOnce定时器只调用一次[小鱼游戏开发]

【爱上Cocos2d-x之十七】scheduleOnce定时器只调用一次由小鱼游戏开发精心整理,并分享给大家。喜欢该资源的小伙伴请下载使用,注册、回复、每日签到、点赞送大量积分,满足您免费下载的愿望

发现定时器的功能还真是蛮强大的,但是如果我们现在有一个需求:希望在几秒之后调用一个函数,而不是每个几秒调用这个函数。

那么,我们这时可以利用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 instance
bool 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模式下运行,效果如下:

【爱上Cocos2d-x之十七】scheduleOnce定时器只调用一次

3秒之后,仅仅看到这一条。

到这里为止,我们通过4篇简短的文章把定时器介绍完了。

轻松一刻:

教授问:烂掉的萝卜和怀孕的女人有什么相同点?一学生妙答:都是虫子惹的祸。仅得60分。另一学生竟得满分,其答案为:都是因为拔晚了。
 下载地址
登录  查看下载地址。

提示:注册,评论,每日签到,点赞可获得积分。

为您推荐

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

联系我们

联系我们

在线咨询: QQ交谈

邮箱: 2805477110@qq.com

周一至周六,8:00-21:00,节假日休息
关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部
切换注册

登录

忘记密码 ?

切换登录

注册