宜昌本地软件开发与弱电工程服务商
项目咨询 · 快速响应
您当前的位置: > 博客2 > AS2与AS3技术

AS3.0的Loader和URLRequest加载示例

2016-10-13 00:16:48 点击量:6 标签: 收藏本文

在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 异常。

ABOUT US
宜昌农人网络科技有限公司

我们是一家提供综合软件外包与弱电工程服务的技术公司。

业务涵盖定制软件、管理系统、网站、小程序、APP、系统集成、网络布线、监控安防、门禁、机房建设及长期技术维护。

公司地址:湖北省宜昌市伍家岗区东站二路6号三峡(宜昌)大数据产业园海洋馆二楼A203室