将大型外部SWF文件加载到主SWF文件时,避免延迟加载时间

时间:2018-11-08 22:14:53

标签: actionscript-3 animate-cc

我有很多使用不同按钮放入大型瑞士法郎的大型瑞士法郎。当调用外部SWF加载和播放时(由于其大小),我遇到了相当长的延迟。 (注意:在本地播放主SWF文件时,加载外部SWF文件不会遇到任何延迟,但是当刻录到CD上时,每次单击其按钮时,大型外部SWF文件会非常缓慢地加载到主SWF文件中。)用于加载swfs:

var Lesson1_Loader:Loader;
Lesson1_Loader = new Loader();

Lesson1Numberbtn.addEventListener(MouseEvent.CLICK, playL1);
function playL1(e:Event):void
{
Lesson1_Loader.load(new URLRequest("Lesson1.swf"));
addChild(Lesson1_Loader);
 }

我的问题:打开主swf时(在播放任何外部swf之前,主swf中有一个介绍性动画)有没有办法让外部swfs开始加载自身(而不是播放)?我单击每个按钮并为每个外部瑞士法郎添加addChild,它已经加载并且可以立即播放而不会延迟?

提前谢谢!

更新:我正在使用时间轴代码(我知道不是首选)。我尝试使用此版本:

var Lesson1_Loader:Loader;
Lesson1_Loader = new Loader();
Lesson1_Loader.load(new URLRequest("Lesson1.swf"));

Lesson1Numberbtn.addEventListener(MouseEvent.CLICK, playL1);
function playL1(e:Event):void
{
addChild(Lesson1_Loader);
 }

...但是,然后Lesson1.swf似乎在main.swf的开头自动播放(在幕后)(我知道这一点是因为Lesson1.swf在第1帧上有声音并且我听到了,但是在视觉上却看到了Lesson1.swf直到我单击“ Lesson1Numberbtn”按钮并添加Child才会显示。Lesson1.swf本身在第1帧上没有“ stop();”,因此在加载时会自动播放。我可以在第1帧上添加stop();。课程1,但要如何在我添加child之后如何从main.swf开始播放课程1。

再次更新: 我已经尝试过使用此代码来控制Lesson1.swf的播放和停止,但是它不起作用:

Lesson1_Loader.load(new URLRequest("Lesson1.swf"));
Lesson1_Loader.contentLoaderInfo.addEventListener(Event.INIT, NotYetL1 );

function NotYetL1(initEvent:Event ):void{
MovieClip(initEvent.currentTarget.content).stop();
}

0 个答案:

没有答案