0

嗨,我想在我的动作脚本项目中播放两个 swf 文件。在这两个文件中,一个 swf 文件在系统前面的检测面上工作。其他 swf 播放 flv 文件。当检测到人脸时,如果没有,玩家必须弯下腰be 播放flv 文件。

我知道如何加载 swf 文件,但我无法处理有关启动和停止播放器的功能。

代码片段显示了如何加载外部 swf 文件。我将在注释中解释每一行代码

    public function videos(view:Sprite)
    {
        this.box = view;//IT GETS Sprite object from other class because of               need to display the player also.
        request = new URLRequest("Untitled-1.swf");
        currentSWF=new MovieClip();


        loader= new Loader();
        loader.load(request);

        box.addChild(loader);
        currentSWF = MovieClip(loader.content);
        loader.addEventListener(Event.COMPLETE,loadComplete);
        //addChild(loader);
        currentSWF.gotoAndPlay(1);//when i put this line of code in  comments it plays the external swf also. 


    }

我希望你能理解我的疑问。任何人都可以解释如何处理我的事情。我是这个动作脚本的新手。请帮助我

4

1 回答 1

0

加载的文件会自动播放,除非您明确告诉他们不要这样做。您必须收听该Event.INIT事件,并在那里停止电影:

loader.AddEventListener(Event.INIT, initLoader);

function initLoader (event:Event)
{
    MovieClip(event.currentTarget.content).stop();
}

这将在电影连接到舞台之前和开始播放之前停止电影 - 因此除非您重新开始,否则它不会这样做。

请注意,您不应该在or事件loader.content之前以任何方式访问,因为很可能那时内容没有加载。因此,您应该将所有操作操作放入事件中:INITCOMPLETECOMPLETE

box.addChild(loader);
loader.addEventListener(Event.COMPLETE, loadComplete);

function loadComplete (event:Event)
{
    // Now it’s safe to access the `content` member:
    currentSWF = MovieClip(loader.content);

    // Of course this one would play the movie again, so you probably want
    // to call that later on a button click or something.
    currentSWF.gotoAndPlay(1);
}
于 2012-11-09T08:09:28.060 回答