欢迎来到天天文库
浏览记录
ID:31707644
大小:61.10 KB
页数:8页
时间:2019-01-17
《as30的加载机制》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、AS3.0的加载机制2010-07-1412:14一:Loader类在AS3.0里把所有事件,属性,加载等都集中在某个对象上了.FL加载对象与各触发事件也进行了分工,这和2.0时期,用onEnterFrame和不断检测加载百分比强多了!Loader继承了基类DisplayObjectContainer,所以他口J以也必须当作一个对象用addChild添加才能工作.Loader类可用于加载SWF文件或图像(JPG、PNG或静态GIF)文件。使用load()方法来启动加载。被加载的显示対象将作为Loader对象的子级添加。例:varloadim
2、g:Loader=newLoader();varurl:String="http://www.shch8.com/v2007/up/UploadFile/200769182617-1.gif*varurlReq:URLRequest=newURLRequest();uiiReq.uii=url;loadimg」oad(urlReq);addChild(loadimg);和2.0和比,还有一点区别,这里加载时要先把字符串地址转化为url加载对象,在程序中的第三行是直接设置加载对象的url属性的,也可以这样写urlReq=newURLReque
3、st(uii),除了url属性还冇几个公共属性,一般很少用到如:method用来控制get还是post提交方式。因为把加载当作一个对象了,所以就不需要象2.0时期一样,新建一个影片来装载加対的物体loadMovie(“myimg.jpg”,”mv”),我们可以直接设置他的x/y轴或宽高。还有Loader对象是二进制方式加载swf了,在flash9之前我们做加载条是用影片的getBytesLoaded和getBytesTotal来检测的是否加载完成。这不是真正意义上的加载,只是判断帧的加载数,所以会岀现类似情况,加载到2()%停了很久突然跳到
4、90%因为那一帧放了整个影片70%的数据。以前在蓝色里有讨论过这个话题,还有人说是MM在走江湖!呵,现在解决了!Loader的所有方法:1.Loader()创建一个可用于加载文件(如SWF、JPEG、GIF或PNG文件)的Loader对象。2.close():void取消当前正在对Loader实例执行的load()方法操作。3.1oad(rcqucst:URLRcqucst,contcxt:LoadcrContcxt=null):void将SWF、JPEG、渐进式JPEG、非动画GIF或PNG文件加载到此Loader对彖的子对象中。4.1o
5、adBytes(bytes:ByteAnay,context:Loadei*Context=null):void从ByleAnay对象屮所存储的二进制数据屮加载。5.unload():void删除此Loader对象中使用load()方法加载的子项。二:Loaderinfo事件机制Loaderinfo非常好用,他是继承EventDispatcher对象用来检测网络加载状态。可以把加载动作细细地解剖出来。原来在flash9Z前,我们绞尽脑汁去获取加载来的swf的宽度、高度、帧频、版本等数据,但一直没研究出好的方法现在LoaderTnfo可以做到
6、能获取加载对彖的各属性,这点很好有时用swf来加载不确定swf时很有用,可以用那些属性来重新设置主swf。加载对象所加载数据的实时检测上,PROGRESS事件可以取代以前用onEnterFrame的疯狂检测工作。当然2.0的也有自己的事件,只是很少人用!Loaderinfo所继承的所有事件:1.complete(事件参数Event.COMPLETE)成功加载数据后调度。2.HttpStatus(事件参数HTTPStatusEvent.HTTP_STATUS)在通过HTTP发出网络请求并11FlashPlayerW以检测到HTTP状态代码时调
7、度。3.Init(事件参数Event.INIT)已加载的SWF文件的属性和方法可访问时调度。4.IoEiTor(事件参数IOErrorEvent.IO_ERROR)在发生导致加载操作失败的输入或输出错误时调度。5.0pen(事件参数Event.OPEN)在加载操作开始时调度。5.Progress(事件参数ProgressEvent.PROGRESS)在下载操作过程屮收到数据时调度。6.Unload(事件参数Event.UNLOAD)每次使用Loader对彖的unload()方法删除已加载对象时,或者当同一Loader对彖执行第二次加载并且在
8、加载开始之前删除了原始内容时,由对象调度。具体测试例子请看loadjpg.swf与loadswf.swfLoaderinfo的获取swf属性时要等swf加载完才能获取,也就是在C
此文档下载收益归作者所有