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

AS3.0的Loader和URLRequest加载示例

时间:2011-09-15 18:56CuPlayer.com
当然URLStream 类提供的是对下载 URL 的低级访问。 数据一下载,便可随即为 ActionScript 使用,这和使用 URLLoader 时需要等到整个文件下载完不同。 并且 URLStream 类还允许在完成下载前关闭流

在As3.0中, 加载外部图片/文本/XML/SWF/SWC可以说是家常便饭,一般地,我们习惯使用Loader和URLRequest来加载,其使用如下:
 

  1. class LoaderExample  
  2. {  
  3.          private var loader:Loader;  
  4.          public function LoaderExample(){  
  5.          loader = new Loader();  
  6.           loader.load(new URLRequest("myswf.swf" ) );  
  7.           loader.loaderInfoContent.addEventListener(Event.COMPLETE, completeHandler);  
  8.          }  
  9.           public function completeHandler(e:Event):void  
  10.          {  
  11.           var target:* = e.target,content;(当load的是swf,

    那么target为MovieClip类型,当为XML时,target则是XML类型.)               

虽然这样的方法很简单,但并不是适用于每一种情况,我曾经试过,同样的代码,加载我的swf,运行正常,但到了第二天,我用flash IDE打开,enter+ ctrl测试影片却突然不确了,监听Complete和IOError都没有执行,搞了半天都不知什么情况,于是改用了二进制加载方法,也是本文重点介绍的。
 

  1. class LoaderExample  
  2. {  
  3.          private var stream:URLStream;  
  4.          public function LoaderExample(){  
  5.          streamnew URLStream();  
  6.          stream.load(new URLRequest("myswf.swf" ) );  
  7.          stream.addEventListener(Event.COMPLETE, completeHandler);  
  8.          }  
  9.           public function completeHandler(e:Event):void  
  10.          {  
  11.           var target:* = e.target,content;(当load的是swf,

    那么target为MovieClip类型,当为XML时,target则是XML类型)               

   哈哈,也很简单吧。当然URLStream 类提供的是对下载 URL 的低级访问。 数据一下载,便可随即为 ActionScript 使用,这和使用 URLLoader 时需要等到整个文件下载完不同。 并且 URLStream 类还允许在完成下载前关闭流。 已下载文件的内容将作为原始二进制数据提供。 在 URLStream 中的读取操作是非阻塞模式的。 这意味着您在读取数据之前必须使用 bytesAvailable 属性来确定是否能够获得足够的数据。 如果不能获得足够的数据,将引发 EOFError 异常。

热门文章推荐

请稍候...

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

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