·您当前的位置:首页 > 技术教程 > AS2与AS3技术 >

Loader与URLLoader区别的总结分析

时间:2011-09-13 17:21CuPlayer.com
区别:一个用来加载可显示数据,一个用来加载非显示数据因为loader是继承与容器类的,所以首先它是个容器,而URLLoader 是继承与EventDispatcher,它不是容器URLLoader 类以文本

区别:一个用来加载可显示数据,一个用来加载非显示数据因为loader是继承与容器类的,所以首先它是个容器,而URLLoader 是继承与EventDispatcher,它不是容器URLLoader 类以文本、二进制数据或 URL 编码变量的形式从 URL 下载数据,在加载非常大的视频文件(如 FLV 的视频文件)时,可能会出现内存不足错误,返回的数据在data属性里面

而loader多加载图片,swf等可视化对象,加载后作为唯一的子对象显示在列表上。

应用范围
Loader: 多用于swf,图片(jpg,png,gif)
URLLoader: 多用于文本文件(xml,php,jsp…)

使用方法
Loader:

loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadComplete); private function loadComplete(event:Event) { trace("done");addChild(loader);}


URLLoader:

xmlLoader.dataFormat=URLLoaderDataFormat.TEXT; xmlLoader.addEventListener(Event.COMPLETE,xmlLoaded); private function xmlLoaded(event:Event) { try {myXML = XML(event.target.data);area.text=myXML;} catch (e:TypeError) {area.text="Load faild:\n"+e.message;} }


Loader
在使用Loader来加载数据时,添加侦听事件时,注意一定要给Loader的 contentLoaderInfo属性增加事件,而不是给Loader对象增加事件。

var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
loader.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);


大家知道Loader是用来代替原来 MovieClip的loadMovie功能,用于加载外部的图片文件,SWF文件。
如果加载图片文件(jpg,gif,png等)时,Loader.content得到数据类型是Bitmap对象;
如果加载SWF文件(flash 9 版本)时,Loader.content得到数据类型是MovieClip对象;
如果加载SWF文件(flash 9 以前版本) 时, Loader.content得到数据类型是AVM1Movie对象;

热门文章推荐

请稍候...

保利威视云平台-轻松实现点播直播视频应用

酷播云数据统计分析跨平台播放器