[Actionscript]AS3 Loading相关

在写上一个Away3D的小玩意时,我本来打算直接在文档类里写一个自我判断载入过程的函数,没想到的是,下载过程数字直接出来就是100%,而文件下载过程中并不出现数字。

研究了半天搞不清楚,于是上网搜索了一下,发现了有文章这么说:“原因在于界面代码分离项目主时间轴通常只有一帧,而flash会默认在第一帧导出类,并在此之后调用文档类的构造函数,也就是说progress事件的侦听是在加载完成后才起作用,当然看不到进度了。”

既然如此,我放弃了在一个文件里实现下载过程的想法,于是写了一个很简单的下载类来载入动画文件,但是让我没想到的是一载入动画文件就报错,而这动画文件直接播放又是没有任何问题,又是研究了老半天,上网找了文章,才发现问题出在载入的动画文件在构造函数里访问了stage对象,而通过别的文件载入此动画文件时,会首先调用构造函数,而此时并不能访问到stage对象,于是就出错了,解决方法就是我的上一篇日志里的这一句:

 

1 ExpandedBlockStart.gif ContractedBlock.gif addEventListener(Event.ADDED_TO_STAGE, function () {
2    stage.addEventListener(MouseEvent.CLICK, clickScene);
3}
);

 

我通过“ADDED_TO_STAGE”事件,在文件加入到舞台后再加上对stage的访问,这样就没有问题了。

另外有一点要注意的是,Away3D的view3D的render()函数也要访问舞台,因此,避免将render()函数放置在文档类的构造函数里,或者使用“ADDED_TO_STAGE”事件解决问题。

转载于:https://www.cnblogs.com/noidea/archive/2009/03/03/1402313.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值