AS3播放影片剪辑一次 [英] as3 play movieclip once

查看:317
本文介绍了AS3播放影片剪辑一次的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如果你帮我解决这个问题,我将非常感激。 I'm尝试在我的应用程序来播放为iPad 1的MovieClip一次。我试着做停在这种方式,但电影不停止

  VAR装载机:装载机=新的Loader();
VAR swfFile:的URLRequest =新的URLRequest(/ test.swf);
loader.load(swfFile);

影片剪辑=新的MovieClip();
movieClip.addChild(装载机);
movieClip.addFrameScript(movieClip.totalFrames  -  1,callbackFunc);
movieClip.play();
私有函数callbackFunc():无效
{
movieClip.stop();
}
 

解决方案

  VAR装载机:装载机=新的Loader();
VAR swfFile:的URLRequest =新的URLRequest(/ test.swf);
loader.contentLoaderInfo.addEventListener(引发Event.COMPLETE,onFileLoaded);
loader.load(swfFile);

//我假设你已经声明影片剪辑?
//如果不这样做:
// VAR影片剪辑:影片剪辑;


私有函数onFileLoaded(五:事件):无效
{
    影片剪辑= loader.content;
    的addChild(影片剪辑);
    movieClip.play();
    的addEventListener(Event.ENTER_FRAME,的OnEnter,真实,0,假);
}

私有函数的OnEnter(五:事件):无效
{
    如果(movieClip.currentFrame == movieClip.totalFrames)
    {
        movieClip.stop();
        removeEventListener(Event.ENTER_FRAME,的OnEnter,真实,0,假);
        //做其他的东西
    }
}
 

这应该做你所需要的。

I would be very thankful if you help me with this problem. I´m trying to play in my application for ipad one MovieClip once. i tried to do stopping in this way, but the movie dont stop

var loader:Loader = new Loader();
var swfFile:URLRequest= new URLRequest("/test.swf");
loader.load(swfFile);

movieClip = new MovieClip();
movieClip.addChild(loader);
movieClip.addFrameScript(movieClip.totalFrames - 1, callbackFunc);
movieClip.play();
private function callbackFunc():void
{
movieClip.stop();
}

解决方案

var loader:Loader = new Loader();
var swfFile:URLRequest= new URLRequest("/test.swf");
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onFileLoaded);
loader.load(swfFile);

//I assume you have declared 'movieClip'?
//if not do:
//var movieClip:MovieClip;


private function onFileLoaded(e:Event):void
{
    movieClip = loader.content;
    addChild(movieClip);
    movieClip.play();
    addEventListener(Event.ENTER_FRAME, onEnter, true, 0, false);
}

private function onEnter(e:Event):void
{
    if (movieClip.currentFrame == movieClip.totalFrames)
    {
        movieClip.stop();
        removeEventListener(Event.ENTER_FRAME, onEnter, true, 0, false);
        //do other stuff
    }
}

This should do what you need.

这篇关于AS3播放影片剪辑一次的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆