zoukankan      html  css  js  c++  java
  • Cocos2d-x三种定时器启用和停止


    定时器:或许你有时候会想让某个函数不断的去执行,或许只是执行一次,获取你想让他每隔几秒执行一次,这些都可以统统交给定时器来解决。
    cocos2dx中有三种定时器:schedule,scheduleUpdate,scheduleOnce。
    1、scheduleUpdate
    功能:每帧(也就是每秒啦)都会自动执行一次默认的Update函数。

    (注:一定是Update函数哦,若想调用其他自己命名的函数则使用schedule)

    /*头文件声明*/
    private:
    virtual void Update(float dt);
    
    /*cpp定义*/
    //定义update void HelloWorld::Update(float dt) { //你想定时做的事情 } //启动 scheduleUpdate(); //停止 unscheduleUpdate();

     2、schedule
    功能:可以每隔几秒(启动时自己设置的参数大小)执行某个自定义的函数

    /*头文件声明*/
    private:
    virtual void TestUpdate(float dt);
    
    /*cpp定义*/
    
    //定义update
    void HelloWorld::TestUpdate(float dt)
    {
         //你想定时做的事情
    }
    
    //启动
    schedule(schedule_selector(HelloWorld::TestUpdate),0.1f);
    //停止
    unschedule(schedule_selector(HelloWorld::TestUpdate));
    

    3、scheduleOnce
    功能:在几秒之后执行,并且只会执行一次

    (其实与schedule启动函数不一样)

    /*头文件声明*/
    private:
    virtual void TestUpdate(float dt);
    
    /*cpp定义*/
    
    //定义update
    void HelloWorld::TestUpdate(float dt)
    {
         //你想定时做的事情
    }
    
    //启动
    scheduleOnce(schedule_selector(HelloWorld::TestUpdate),0.1f);
    //停止
    unschedule(schedule_selector(HelloWorld::TestUpdate));
    

    停止所有定时器

    this->unscheduleAllSelectors();
    
  • 相关阅读:
    SlickEdit 中 GDB 调试时SIG32 使得无法跟踪的问题 解决方法
    ln与mount
    ubuntu12.04 的 root 用户显示 中文 和 默认显示中文的方法
    ASP.NET MVC控制器作用
    ASP.NET管道模型
    第二章MVC框架如何截获请求
    第一章MVC与WebForms处理请求的区别
    asp.net运行原理一
    一个通配符引起的错误
    关于权限
  • 原文地址:https://www.cnblogs.com/xiahei/p/7501679.html
Copyright © 2011-2022 走看看