【发布时间】:2016-07-09 08:52:17
【问题描述】:
我意识到这已被多次询问和回答,但即使经过阅读,我也无法解决此问题。 是)我有的: 预加载器 应该在预加载器之后发生的游戏 真正发生的事情: 所有组件都在预加载器之前加载,这使得预加载器无用哈哈。我已将“第 1 帧中的导出类”更改为“第 2 帧”,但无济于事。 我不想使用外部预加载器。
这是我的代码:
stop();
this.addEventListener(Event.ENTER_FRAME, loading);
function loading(e:Event):void{
var total:Number = this.stage.loaderInfo.bytesTotal;
var loaded:Number = this.stage.loaderInfo.bytesLoaded;
preloader.scaleX = loaded/total;
if (total == loaded){
nextFrame();
this.removeEventListener(Event.ENTER_FRAME, loading);
}
}
这是这样的:
https://pp.vk.me/c630919/v630919494/37371/sgdJTWian6Q.jpg
我做错了什么?
【问题讨论】:
-
您知道如何在代码中设置断点并运行调试器吗?如果你能做到这一点,你可能会自己解决它。我也总是将值跟踪到输出窗口。
-
@NealDavis 好吧,我通常在 JS 中跟踪
"1",当我有懒惰的时候。您是否在课堂上执行此操作? -
确保您的预加载器仅在第 1 帧上,没有别的。并确保不要将资源从库中导出到第 1 帧。Flash 将始终在执行任何操作之前加载第一帧,因此某些内容仍然存在
-
您应该检查两件事。首先是确定帧大小,如果你的帧 1 是 SWF 的 99%,那么你做错了什么。如果它很小但问题仍然存在,我知道 IE11 行为首先完全加载 SWF,然后才显示 Flash 播放器窗口,使预加载器无用。我不知道其他浏览器会有这样的行为,但这可能是一种趋势。
-
您是否通过直接加载 swf 进行测试?如果是这种情况,请尝试将其嵌入到 html 页面中
标签: actionscript-3 flash actionscript preloader flash-cc