双帧法:解决AS3.0文档类加载自身loading进度只有100%的问题

AS3.0文档类加载自身loading进度时会出现直接显示100%的问题,用这个“双帧法”(制作loading最少要两帧,),只需要三个步骤可以解决这个问题:
1、第一帧放loading MC;
2、第二帧放文档类要用到MC元件;
3、最关键的一步:将所有链接到文档类的元件的链接属性中的“在第一帧导出”取消掉。


示例代码:

package 
{
	import flash.display.*;
	import flash.events.*;	
	import flash.text.*;
	
	public class loadinfoTest extends MovieClip 
	{
		public var loadText:TextField;
		
		public function loadinfoTest():void
		{
			stop(); 
			
			loadText = new TextField();
			loadText.text = "0%";
			loadText.autoSize = "left";
			addChild(loadText);

			//注册首页自身加载进度事件
			this.loaderInfo.addEventListener(ProgressEvent.PROGRESS, indexLoadingProgress);

			//注册首页自身加载完成事件
			this.loaderInfo.addEventListener(Event.COMPLETE, indexLoaded);
		}

		//首页Loading加载进度
		public function indexLoadingProgress(event:ProgressEvent):void
		{
			var hl:Number = event.bytesLoaded / event.bytesTotal;
			var n:Number = Math.round(hl * 100); 
			trace(event.bytesLoaded, n);

			loadText.text = n + "%"; 
		}

		public function indexLoaded(event:Event):void
		{
			trace('Loaded!!');
			gotoAndStop(2);
			var a:appMC = new appMC(); //实例一个元件类,不在帧1中导出
			addChild(a); 
		}
	}
}

转载于:https://my.oschina.net/pandao/blog/136819

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值