又看见定时器了,怎么这么想写了~~

来源:互联网 发布:淘宝上哪里有卖春药的 编辑:程序博客网 时间:2024/04/28 06:12

1.scheduleUpdate(); 与virtual void update(float dt);   联合使用,就是每隔一段时间就调用一次update,实际上是每一帧都调用一次updata方法,scheduleUpdate();方法相当于开启了定时器。

2.schedule的作用和scheduleUpdate差不多,只是这个其实更好用一些,这个可以只是指定调用的方法,系统默认每一帧都调用一次updata方法,这只是后面没有参数的情况,如果说后面带有一个参数可以定义更新的时间,当然也可以定义更新的次数和延迟的时间。


3.第三种就是比较全面了,在前两者的前提下,定义次数和延迟 的时间。


  1. scheduleUpdate(); 此函数是Node的成员函数,每个Node只要调用scheduleUpdate(),那么这个Node就会自动刷新当前类的update(float dt)函数体。scheduleUpdate()默认每一帧都会调用update函数。

  2. schedule的作用与scheduleUpdate()函数相似,但是scheduleUpdate()默认每一帧都会调用update函数,而schedule则可以自定义刷新的函数体和时间间隔。

    • [1]schedule(selector); 参数:目标函数,即自定义的更新函数。该函数等同于scheduleUpdate,默认每一帧都调用目标函数。

    • [2]schedule(selector, interval); 参数:目标函数,更新时间。

    • [3]schedule(selector, interval, repeat, delay); 参数:目标函数,更新时间,更新次数,每次等待时间。

  3. scheduleOnce(selector, delay); 参数:目标函数,等待时间。只执行一次,可以指定刷新的函数体。

4、停用定时器的方法~~

停用定时器的方法:

  1. 停止默认的update更新函数。 

    unscheduleUpdate();

  2. 停止自定义更新函数。 

    unschedule(selector); 参数:自定义的更新函数。

  3. 停止所有更新函数。 

    unscheduleAllSelectors()


0 0
原创粉丝点击