AS3预加载SWF实例

        在页面上显示SWF是要等到目标完全被加载完才会渲染出来。当加载的SWF文件比较大时,页面会处于空白状态,用户体验不好。较好的做法是做一个文件大小较小的loading动画来加载目标SWF,但对于单独的项目来说并不是最好的做法,因为这样无疑要维护多一个项目。看看下面这种做法:

 


1.创建Preloading.fla,设置Export class in Frame:2(第二帧才运行Main class)




2.在库中新建元件McLoading,Type:MovieClip,并勾上Export for ActionScript




3.在库中新建元件McMain,Type:MovieClip,并勾上Export For ActionScript,把Class改为Preloading


4.在场景中新建两帧,第一帧放McLoading,第二帧放McMain




5.在FB中新建Professional项目,并选择Preloading.fla作为Target




6.在FB中新建类McLoading,写入下列代码




 

                public function McLoading()
		{
			loaderInfo.addEventListener(ProgressEvent.PROGRESS,onProgress);
			loaderInfo.addEventListener(Event.COMPLETE, onComplete);
		}
		
		private function onProgress(event:ProgressEvent):void
		{
			trace("loading:"+int(event.bytesLoaded / event.bytesTotal * 100) + "%");
		}
		
		private function onComplete(event:Event):void
		{
			trace('loading complete');
			var mc:MovieClip = parent as MovieClip;
			mc.gotoAndStop(2);
		}


 

7.在FB中编辑Preloading.as,写入下列代码


 

                public function Preloading()
		{
			addEventListener(Event.ADDED_TO_STAGE, onAddedToStage);
		}
		
		private function onAddedToStage(event:Event):void
		{
			event.currentTarget.removeEventListener(event.type,onAddedToStage);
			
			trace('addedTostage');
		}


源码:Preloading.zip


 

转载于:https://www.cnblogs.com/in1ts/p/3572478.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值