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

[AS3]AS3下文档类中载入Loading写法代码示例

时间:2013-01-09 09:55CuPlayer
制作loading最少需要两帧,这是需要注意的地方,了解loading原理的朋友应该知道,开始的时候自动停止第一帧,然后进行loading操作,需要显示进度可以在loadProgress里写你需要的操作

  制作loading最少需要两帧,这是需要注意的地方,了解loading原理的朋友应该知道。
  第一帧为loading动画。
  第二帧为你的内容。
  下面的代码假设flash有两帧:
  一开始的时候自动停止第一帧,然后进行loading操作,需要显示进度可以在loadProgress里写你需要的操作,加载完后自己跳到第二帧,并停止。注意的是在main函数里,使用了addFrameScript给动画的第二帧添加了stop()代码,这里不是必须的,addFrameScript是一个隐藏函数,这里只是测试一下(ps一下,addFrameScript中,前面是帧数,后面是要加载的函数,帧数是从0开始的)。

  1. package{   
  2.   import flash.display.*;   
  3.   import flash.events.*;   
  4.   public class main extends MovieClip{   
  5.     public function main():void{   
  6.       stop()   
  7.  
  8.       //CuPlayer.com 也可以使用addFrameScript给指定的帧添加代码   
  9.       //addFrameScript(1,frameScript)   
  10.  
  11.       //CuPlayer.com 调用加载脚本   
  12.       loadScript()   
  13.     }   
  14.     private function loadScript():void{   
  15.       //as3中,所以的显示对象都可以使用loaderInfo来侦听加载状态   
  16.       //我们添加一个""Progress""和一个""complete""   
  17.       root.loaderInfo.addEventListener(ProgressEvent.PROGRESS,loadProgress,false,0,true)   
  18.       root.loaderInfo.addEventListener(Event.COMPLETE,init,false,0,true)   
  19.     }   
  20.     private function loadProgress(e:ProgressEvent):void{   
  21.       //加载过程中会调用此函数   
  22.       //e.bytesLoaded/e.bytesTotal分别是已经加载字节跟总字节   
  23.       //需要显示进度可以在这里操作   
  24.       trace(e.bytesLoaded,e.bytesTotal)   
  25.     }   
  26.     private function init(e:Event):void{   
  27.       //加载完成,我们跳到第二帧进行播放   
  28.       gotoAndStop(2)   
  29.       //操作代码....   
  30.     }   
  31.     private function frameScript():void{   
  32.       trace(""第二帧停止"")   
  33.       stop()   
  34.       //操作   
  35.     }   
  36.   }   

 

热门文章推荐

请稍候...

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

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