跳到主要内容

egret.Ticker

   egret

   public class Ticker

继承    egret.Ticker → egret.EventDispatcheregret.HashObject

公共属性

属性

公共方法

方法
Ticker()
getInstance():egret.Ticker
[静态]
pause():void
暂停
register(listener:Function,thisObject:any,priority:number):void
注册帧回调事件,同一函数的重复监听会被忽略
resume():void
继续
unregister(listener:Function,thisObject:any):void
取消侦听enterFrame事件

属性详细信息

方法详细信息

Ticker()

public Ticker()

  • 支持版本:Egret 2.4
  • 运行平台:Web,Native

getInstance()

public getInstance():egret.Ticker

  • 支持版本:Egret 2.4
  • 运行平台:Web,Native

pause()

public pause():void

暂停

  • 支持版本:all
  • 运行平台:Web,Native

register()

public register(listener:Function,thisObject:any,priority:number):void

注册帧回调事件,同一函数的重复监听会被忽略。推荐使用 egret.startTick 替代此方法。

  • 支持版本:Egret 2.4
  • 运行平台:Web,Native
  • 参数
    • listener:Function - 帧回调函数,参数返回上一帧和这帧的间隔时间。示例:onEnterFrame(frameTime:number):void
    • thisObject:any - 帧回调函数的this对象
    • priority:number - 事件优先级,开发者请勿传递 Number.NEGATIVE_INFINITY 和 Number.POSITIVE_INFINITY

resume()

public resume():void

继续

  • 支持版本:all
  • 运行平台:Web,Native

unregister()

public unregister(listener:Function,thisObject:any):void

取消侦听enterFrame事件。推荐使用 egret.stopTick 替代此方法。

  • 支持版本:Egret 2.4
  • 运行平台:Web,Native
  • 参数
    • listener:Function - 事件侦听函数
    • thisObject:any - 侦听函数的this对象

示例

/*
* 以下示例演示了使用 Ticker 注册和删除帧函数。
*/
class TickerExample extends egret.DisplayObjectContainer {
public constructor() {
super();
//注册事件侦听
egret.Ticker.getInstance().register(this.onTick, this);
egret.log("register");
}
private passTime: number = 0;
private onTick(dt: number): void {
//累加时间,dt是帧时间间隔以毫秒为单位
this.passTime += dt;
egret.log("onTick");
//经过5秒后删除帧函数
if (this.passTime > 5000) {
egret.Ticker.getInstance().unregister(this.onTick, this);
egret.log("unregister");
}
}
}