cocos2dx-js 学习笔记 定时器

定时器schedule、 scheduleOnec、scheduleUpdate
需要注意的是用该方法的地方首先需要把代码跑起来,可以调用它的

this.isRunning();

```

打印该值看是否已经跑起来了。
schedule:自定义回调函数名字,第二个参数是每格多久执行一次,如果为0表示每帧执行,建议适用scheduleUpdate()
    onEnter:function(){
        this._super();
        this.schedule(this.scheduleCallFun, 3, cc.REPEAT_FOREVER, 5);
    },

    scheduleCallFun:function(){
        cc.log("---scheduleCallFun---");
    }

```


scheduleUpdate:每帧自动执行update()方法,所以需要自己实现update()。
    onEnter:function(){
        this._super();
        this.scheduleUpdate();
    },

    update:function(dt){
        cc.log(" --- update ---");
    }

```

scheduleOnec: 顾名思义是只执行一次,需要注意的是传进去的时间单位是秒。
例如 :5秒后执行一次方法
    onEnter:function(){
        this._super();
        this.scheduleOnce(function(){
            cc.log("---scheduleOnce----");
        }, 5);
    }

```

:7: :7: 赞。支持一个。

cocos2dx-js 学习笔记我也想要一份

this.schedule(this.scheduleCallFun, 3, cc.REPEAT_FOREVER, 5);

我想问一下。这个要是执行完了。我再想开启这个执行。怎么做?
好像只能开启一次。

这个方法如果第3个参数是cc.REPEAT_FOREVER的话是一只会执行下去的。 如果不执行要调用this.unschedule(fun); 然后再其它地方就可以继续调用schedule(…)。 如果没有关闭就继续调用schedule会提示你说该回调函数已经在执行schedule

我的版本的2.23,
我现在就是先开启schedule。执行完了。就this.unschedule(fun);。然后再schedule。结果不行。

后来只好用update来自己计算次数了.也算是搞定了。

:10::10::10::10::10::10::10::10::10::10::10::10::10::10::10: