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

[AS3]as3加载jpg,png,gif,swf的全介绍

时间:2013-04-09 20:28CuPlayer.com
如果加载图片文件(jpg,gif,png等)时,Loader.content 得到数据类型是Bitmap 对象; 如果加载SWF文件(flash 9 版本)时,Loader.content 得到数据类型是MovieClip 对象;

(1)Loader
 Loader 像2.0中MovieClip 的loadMovie 功能,用于加载外部的图片和SWF文件。

如果加载图片文件(jpg,gif,png等)时,Loader.content 得到数据类型是Bitmap 对象;
 如果加载SWF文件(flash 9 版本)时,Loader.content 得到数据类型是MovieClip 对象;
 如果加载SWF文件(flash 9 以前版本) 时, Loader.content 得到数据类型是AVM1Movie 对象;

(2)URLLoader

(3)URLStream

下面我做了一个实例将被加载的配置文件以二进制数据读取 ,这可以解决很多问题,比如对不同格式配置文件进行的处理

例如:

  1. package     
  2. {    
  3.     import flash.display.Sprite;    
  4.     import flash.events.Event;    
  5.     import flash.net.URLRequest;    
  6.     import flash.net.URLStream;    
  7.     import flash.net.URLLoader;    
  8.     import flash.utils.ByteArray;    
  9.     import flash.net.URLLoaderDataFormat;     
  10.     public class Test extends Sprite   
  11.     {    
  12.         public function Test()     
  13.         {    
  14.             //testURLLoader();    
  15.             testURLStream();    
  16.         }    
  17.         private function testURLLoader():void   
  18.         {    
  19.             var urlLoader:URLLoader = new URLLoader();    
  20.             urlLoader.dataFormat = URLLoaderDataFormat.BINARY; 
  21. //原始二进制数据    
  22.             urlLoader.addEventListener(Event.COMPLETE, completeHandler);    
  23.             urlLoader.load(new URLRequest(“02.xml”));    
  24.         }    
  25.         private function completeHandler(event:Event):void   
  26.         {    
  27.             trace(“配置文件是ANSI  :” + event.target.data); 
  28. // 如果配置文件是ANSI等,会出现中文字乱码    
  29. //URLLoader如果遇到乱码,则可以转换(利用标准的xml 
  30. //格式Excle可以解决乱码问题就是基于这里):    
  31.             var _byteArray:ByteArray = new ByteArray;    
  32.             _byteArray.writeBytes(event.target.data);    
  33.             _byteArray.position = 0;       
  34.             //CuPlayer.com提示:如果是xml文档    
  35.             var xml:XML = XML(_byteArray.readMultiByte(_byteArray.length, ”chinese”)); 
  36. //简体中文 (GB2312)    
  37.             trace(xml);    
  38.         }    
  39.         private function testURLStream():void   
  40.         {    
  41.             var stream:URLStream = new URLStream();    
  42.             stream.addEventListener(Event.COMPLETE, complete);    
  43.             stream.load(new URLRequest(“02.xml”));    
  44.         }    
  45.         private function complete (event:Event):void   
  46.         {    
  47.             var stream:URLStream = event.target as URLStream;    
  48.             var xml:XML = XML(stream.readMultiByte(stream.bytesAvailable, ”chinese”)); 
  49. //CuPlayer.com提示:简体中文 (GB2312)    
  50.             trace(xml);    
  51.         }    
  52.     }    

 

热门文章推荐

请稍候...

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

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