Actionscript 3 在第2帧上加载嵌入SWF?
是否可以在第2帧上加载嵌入在另一个swf中的swf 我需要产生一个单一的,主要的swf,其中包含一个声音的swf。声音swf包含用于代码实例化的导出声音文件。声音swf根据主swf的版本而变化,因此希望在编译时嵌入。目前,我使用[embed]元数据标记将声音swf嵌入到主swf代码中,所有这些都可以工作。然而,这似乎在第1帧上加载了SWF,我更希望在预加载程序运行后在第2帧上加载 我在网上查过,这个问题似乎被问到了,但从未真正得到回答 为了澄清,我在一个主类中嵌入了一个swf及其符号,代码如下:Actionscript 3 在第2帧上加载嵌入SWF?,actionscript-3,Actionscript 3,是否可以在第2帧上加载嵌入在另一个swf中的swf 我需要产生一个单一的,主要的swf,其中包含一个声音的swf。声音swf包含用于代码实例化的导出声音文件。声音swf根据主swf的版本而变化,因此希望在编译时嵌入。目前,我使用[embed]元数据标记将声音swf嵌入到主swf代码中,所有这些都可以工作。然而,这似乎在第1帧上加载了SWF,我更希望在预加载程序运行后在第2帧上加载 我在网上查过,这个问题似乎被问到了,但从未真正得到回答 为了澄清,我在一个主类中嵌入了一个swf及其符号,代码如下:
[Embed(source = 'sound.swf', symbol = 'music')] public var music:Class;
嵌入swf和符号加载到初始主swf负载上。如果我将声音swf设置为在第2帧上导出,则它不会编译。主swf中的库内容加载到帧2上,以允许帧1中的预加载程序运行。我试图找出是否有办法使sound.swf中的资产也加载到frame2上。这似乎解决了我的问题。下面是示例代码。我嵌入了一个包含声音资源的swf,但对mimeType使用application/octet流。然后,我可以使用ActionScript加载程序类加载swf。然后可以使用getDefinitionByName实例化加载的swf中的符号。此外,如果有对加载的swf的引用,可以使用getDefinition进行实例化,请参见下面注释掉的行。到目前为止,这对我有效
package
{
import flash.display.Loader;
import flash.display.MovieClip;
import flash.media.Sound;
import flash.events.Event;
import flash.system.LoaderContext;
import flash.system.ApplicationDomain;
import flash.utils.getDefinitionByName;
public class TestEmbed extends MovieClip
{
[Embed(source="EmbedAudio.swf", mimeType="application/octet-stream")]
public var EmbedAudio : Class;
public function TestEmbed()
{
super();
// load embed swf
var context : LoaderContext = new LoaderContext (false,ApplicationDomain.currentDomain);
context.allowCodeImport = true;
var loader : Loader = new Loader ();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loader_complete);
loader.loadBytes (new EmbedAudio (), context);
}
private function loader_complete(evt:Event):void {
// instantiate the class
/*var ClassDefinition:Class = evt.target.applicationDomain.getDefinition("k3n1_01") as Class;*/
var ClassDefinition:Class=getDefinitionByName("k3n1_01") as Class;
var k3n1_01:Sound = new ClassDefinition();
k3n1_01.play();
}
}
}
我真的不明白这个问题…有两个文件更实际:一个预加载程序和一个主电影。在同一个文件中预加载可能会给您带来问题,请参阅此文件。这是横幅还是有限制的东西?是的。我被限制为1个文件。