Package | laya.display |
Class | public class FrameAnimation |
Inheritance | FrameAnimation AnimationPlayerBase Sprite Node EventDispatcher Object |
Subclasses | EffectAnimation |
Method | Defined By | ||
---|---|---|---|
FrameAnimation | |||
添加子节点。
| Node | ||
添加子节点到指定的索引位置。
| Node | ||
addChildren(... args):void
批量增加子节点
| Node | ||
addLabel(label:String, index:int):void
增加一个帧标签到指定索引的帧上。当动画播放到此索引的帧时会派发Event.LABEL事件,派发事件是在完成当前帧画面更新之后。
| AnimationPlayerBase | ||
clear():void [override]
停止动画播放,并清理对象属性。之后可存入对象池,方便对象复用。
| FrameAnimation | ||
clearTimer(caller:*, method:Function):void
清理定时器。功能同Laya.timer.clearTimer()。
| Node | ||
当前容器是否包含指定的 Node 节点对象 。
| Node | ||
customRender(context:RenderContext, x:Number, y:Number):void
自定义更新、呈现显示对象。一般用来扩展渲染模式,请合理使用,可能会导致在加速器上无法渲染。
注意不要在此函数内增加或删除树节点,否则会对树节点遍历造成影响。
| Sprite | ||
destroy(destroyChild:Boolean = true):void [override]
销毁此对象。destroy对象默认会把自己从父节点移除,并且清理自身引用关系,等待js自动垃圾回收机制回收。destroy后不能再使用。
destroy时会移除自身的事情监听,自身的timer监听,移除子对象及从父节点移除自己。
| Sprite | ||
destroyChildren():void
销毁所有子对象,不销毁自己本身。
| Node | ||
drawToCanvas(canvasWidth:Number, canvasHeight:Number, offsetX:Number, offsetY:Number):HTMLCanvas
绘制 当前Sprite 到 Canvas 上,并返回一个HtmlCanvas。
绘制的结果可以当作图片源,再次绘制到其他Sprite里面,示例:
var htmlCanvas:HTMLCanvas = sprite.drawToCanvas(100, 100, 0, 0);//把精灵绘制到canvas上面
var texture:Texture = new Texture(htmlCanvas);//使用htmlCanvas创建Texture
var sp:Sprite = new Sprite().pos(0, 200);//创建精灵并把它放倒200位置
sp.graphics.drawTexture(texture);//把截图绘制到精灵上
Laya.stage.addChild(sp);//把精灵显示到舞台
也可以获取原始图片数据,分享到网上,从而实现截图效果,示例:
var htmlCanvas:HTMLCanvas = sprite.drawToCanvas(100, 100, 0, 0);//把精灵绘制到canvas上面
var canvas:= htmlCanvas.getCanvas();//获取原生的canvas对象
trace(canvas.toDataURL("image/png"));//打印图片base64信息,可以发给服务器或者保存为图片
| Sprite | ||
event(type:String, data:* = null):Boolean
派发事件。
| EventDispatcher | ||
frameLoop(delay:int, caller:*, method:Function, args:Array = null, coverBefore:Boolean = true):void
定时重复执行某函数(基于帧率)。功能同Laya.timer.frameLoop()。
| Node | ||
frameOnce(delay:int, caller:*, method:Function, args:Array = null, coverBefore:Boolean = true):void
定时执行一次某函数(基于帧率)。功能同Laya.timer.frameOnce()。
| Node | ||
[static]
根据图片地址创建一个新的 Sprite 对象用于加载并显示此图片。
| Sprite | ||
将父容器坐标系坐标转换到本地坐标系。
| Sprite | ||
获取本对象在父容器坐标系的矩形显示区域。
注意: 1.计算量较大,尽量少用,如果需要频繁使用,可以通过手动设置 setBounds 来缓存自身边界信息,从而避免比较消耗性能的计算。2. | Sprite | ||
getChildAt(index:int):Node
根据子节点的索引位置,获取子节点对象。
| Node | ||
getChildByName(name:String):Node
根据子节点的名字,获取子节点对象。
| Node | ||
getChildIndex(node:Node):int
根据子节点对象,获取子节点的索引位置。
| Node | ||
getGraphicBounds(realSize:Boolean = false):Rectangle
返回此实例中的绘图对象( Graphics )的显示区域,不包括子对象。
| Sprite | ||
获得相对于本对象上的鼠标坐标信息。 | Sprite | ||
获取对象在自身坐标系的边界范围。与 setBounds 对应。
注意:计算量较大,尽量少用,如果需要频繁使用,可以提前手动设置 setBounds 来缓存自身边界信息,从而避免比较消耗性能的计算。
| Sprite | ||
把stage的全局坐标转换为本地坐标。
| Sprite | ||
gotoAndStop(position:*):void
将动画切换到指定帧并停在那里。
| AnimationPlayerBase | ||
hasListener(type:String):Boolean
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。
| EventDispatcher | ||
hitTestPoint(x:Number, y:Number):Boolean
检测某个点是否在此对象内。
| Sprite | ||
isMouseEvent(type:String):Boolean
检测指定事件类型是否是鼠标事件。
| EventDispatcher | ||
loadImage(url:String, x:Number = 0, y:Number = 0, width:Number = 0, height:Number = 0, complete:Handler = null):Sprite
加载并显示一个图片。功能等同于graphics.loadImage方法。支持异步加载。
注意:多次调用loadImage绘制不同的图片,会同时显示。
| Sprite | ||
把本地坐标转换为相对stage的全局坐标。
| Sprite | ||
off(type:String, caller:*, listener:Function, onceOnly:Boolean = false):EventDispatcher
从 EventDispatcher 对象中删除侦听器。
| EventDispatcher | ||
offAll(type:String = null):EventDispatcher
从 EventDispatcher 对象中删除指定事件类型的所有侦听器。
| EventDispatcher | ||
on(type:String, caller:*, listener:Function, args:Array = null):EventDispatcher [override]
增加事件侦听器,以使侦听器能够接收事件通知。
如果侦听鼠标事件,则会自动设置自己和父亲节点的属性 mouseEnabled 的值为 true(如果父节点mouseEnabled=false,则停止设置父节点mouseEnabled属性)。
| Sprite | ||
once(type:String, caller:*, listener:Function, args:Array = null):EventDispatcher [override]
增加事件侦听器,以使侦听器能够接收事件通知,此侦听事件响应一次后则自动移除侦听。
如果侦听鼠标事件,则会自动设置自己和父亲节点的属性 mouseEnabled 的值为 true(如果父节点mouseEnabled=false,则停止设置父节点mouseEnabled属性)。
| Sprite | ||
parentRepaint():void cacheAs时,设置所有父对象缓存失效。 | Sprite | ||
设置轴心点。相当于分别设置pivotX和pivotY属性。
因为返回值为Sprite对象本身,所以可以使用如下语法:spr.pivot(...).pos(...);
| Sprite | ||
play(start:* = 0, loop:Boolean = true, name:String, showWarn:Boolean = true):void
开始播放动画。play(...)方法被设计为在创建实例后的任何时候都可以被调用,当相应的资源加载完毕、调用动画帧填充方法(set frames)或者将实例显示在舞台上时,会判断是否正在播放中,如果是,则进行播放。
配合wrapMode属性,可设置动画播放顺序类型。
| AnimationPlayerBase | ||
设置坐标位置。相当于分别设置x和y属性。
因为返回值为Sprite对象本身,所以可以使用如下语法:spr.pos(...).scale(...);
| Sprite | ||
reCache():void 在设置cacheAs的情况下,调用此方法会重新刷新缓存。 | Sprite | ||
删除子节点。
| Node | ||
removeChildAt(index:int):Node
根据子节点索引位置,删除对应的子节点对象。
| Node | ||
removeChildByName(name:String):Node
根据子节点名字删除对应的子节点对象,如果找不到不会抛出异常。
| Node | ||
removeChildren(beginIndex:int = 0, endIndex:int = 0x7fffffff):Node
删除指定索引区间的所有子对象。
| Node | ||
removeLabel(label:String):void
删除指定的帧标签。
| AnimationPlayerBase | ||
从父容器删除自己,如已经被删除不会抛出异常。
| Node | ||
render(context:RenderContext, x:Number, y:Number):void
更新、呈现显示对象。由系统调用。
| Sprite | ||
repaint():void cacheAs后,设置自己和父对象缓存失效。 | Sprite | ||
替换子节点。
| Node | ||
resetToInitState():void
将动画控制对象还原到动画控制之前的状态
| FrameAnimation | ||
设置缩放。相当于分别设置scaleX和scaleY属性。
因为返回值为Sprite对象本身,所以可以使用如下语法:spr.scale(...).pos(...);
| Sprite | ||
设置对象在自身坐标系下的边界范围。与 getSelfBounds 对应。当 autoSize==true 时,会影响对象宽高。设置后,当需要获取自身边界范围时,就不再需要计算,合理使用能提高性能。比如 getBounds 会优先使用 setBounds 指定的值,如果没有指定则进行计算,此计算会对性能消耗比较大。
注意: setBounds 与 getBounds 并非对应相等关系, getBounds 获取的是本对象在父容器坐标系下的边界范围,通过设置 setBounds 会影响 getBounds 的结果。
| Sprite | ||
设置子节点的索引位置。
| Node | ||
设置宽高。相当于分别设置width和height属性。
因为返回值为Sprite对象本身,所以可以使用如下语法:spr.size(...).pos(...);
| Sprite | ||
设置倾斜角度。相当于分别设置skewX和skewY属性。
因为返回值为Sprite对象本身,所以可以使用如下语法:spr.skew(...).pos(...);
| Sprite | ||
startDrag(area:Rectangle = null, hasInertia:Boolean = false, elasticDistance:Number = 0, elasticBackTime:int = 300, data:* = null, disableMouseEvent:Boolean = false, ratio:Number = 0.92):void
开始拖动此对象。
| Sprite | ||
stop():void
停止动画播放。
| AnimationPlayerBase | ||
stopDrag():void 停止拖动此对象。 | Sprite | ||
timerLoop(delay:int, caller:*, method:Function, args:Array = null, coverBefore:Boolean = true, jumpFrame:Boolean = false):void
定时重复执行某函数。功能同Laya.timer.timerLoop()。
| Node | ||
timerOnce(delay:int, caller:*, method:Function, args:Array = null, coverBefore:Boolean = true):void
定时执行某函数一次。功能同Laya.timer.timerOnce()。
| Node | ||
将本地坐标系坐标转转换到父容器坐标系。
| Sprite | ||
updateZOrder():void 根据zOrder进行重新排序。 | Sprite |
Method | Defined By | ||
---|---|---|---|
_displayToIndex(value:int):void [override] | FrameAnimation |
Event | Summary | Defined By | ||
---|---|---|---|---|
添加到父对象后调度。 | Node | |||
鼠标点击对象后调度。 | Sprite | |||
动画播放完毕后调度。 | FrameAnimation | |||
加入节点树时调度。 | Node | |||
拖动结束后调度。 | Sprite | |||
拖动中调度。 | Sprite | |||
开始拖动后调度。 | Sprite | |||
播放到某标签后调度。 | FrameAnimation | |||
在显示对象上按下后调度。 | Sprite | |||
鼠标在对象身上进行移动后调度 | Sprite | |||
鼠标离开对象后调度。 | Sprite | |||
鼠标经过对象后调度。 | Sprite | |||
在显示对象抬起后调度。 | Sprite | |||
被父对象移除后调度。 | Node | |||
从节点树移除时调度。 | Node |
FrameAnimation | () | Constructor |
public function FrameAnimation()
_displayToIndex | () | method |
override protected function _displayToIndex(value:int):void
Parameters
value:int |
clear | () | method |
override public function clear():void
停止动画播放,并清理对象属性。之后可存入对象池,方便对象复用。
resetToInitState | () | method |
public function resetToInitState():void
将动画控制对象还原到动画控制之前的状态
complete | Event |
label | Event |