快速业务通道

Flash AS3教程:Motion类

作者 凌众技术 来源 网页制作 浏览 发布时间 2012-03-10

前面教程学习了Flash AS3教程:Random类,这篇我们一起来学习Motion类的使用方法和实例。 

先来一个例子展示:
http://www.webjx.com/files/media/Motion.swf

这个类貌似是多余的,反正就是Tween类,但是解决了动画可能播到一半就停止了等问题,Tween播放到一半就停止了原因是因为类中的侦听EnterFrame事件的时候,使用的是弱引用侦听方式,在播放的途中,被内存自动回收了,因此播放到一半就夭折了,解决办法嘛,除了自己写一个,也可以去包中改一下Tween,把侦听改成强引用就行了
我个人是不太习惯使用Tween的,因此我就写了这个类,自己使用嘛,大家觉得还不错就拿去用吧
缓动的算法还是使用ADOBE自带的那个easing包
这个类属性和方法比较多。。耐心看吧,跟Tween差不了太多的

类讲解:
index.base.animation.Motion类:
代码:public class Motion extends EventDispatcher
提供给程序员使用的动画类

构造函数:
public function Motion(target_:*,_attribute:String,_algorithm:Function,_begin:Number,_end:Number,_duration:uint = 10)
与Tween一模一样,只不过最后少了个属性是是否以时间计算缓动,而该类只有以帧频计算缓动

play方法:
public function play():void
开始播放,并触发播放事件
如果正在播放,调用该方法不会有什么变化,只不过会触发播放事件

back方法:
public function back():void
同于play方法,不同的是该方法是让动画反过来播放

resume方法:
public function resume():void
继续播放,依然会触发播放事件

stop方法:
public function stop():void
停止播放,触发停止事件
如果是播放完毕了,即还会触发播放完毕事件
停止事件永远比播放完毕事件提前调度

reset方法:
public function reset():void
重置动画,还原到刚开始实例化的状态
无论是否正在播放,都会触发停止事件

forward方法:
public function forward():void
快进到最后

rewind方法:
public function rewind():void
倒带到最前

next方法:
public function next():void
向前播放一帧
如果是在播放中使用该方法,效果不是太明显

prev方法:
public function prev():void
向前播放一帧
如果是在播放中使用该方法,效果不是太明显

clear方法:
public function clear():void
清除类中的引用,事件等

isBack属性(只读):
public function get isBack():Boolean
是否在回放状态

target属性(只读):
public function get target():*
获取当前操作的对象

current属性(只读):
public function get current():u

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号