我正在使用Loader将AMV1Movie (使用Toon Boom Studio创建的电影)添加到我的AS3.0阶段。如何确定AMV1Movie何时播放它的最后一帧?
发布于 2011-11-13 21:58:38
如果不发送原始电影中的内容,您必须轮询它的currentFrame和numFrames属性,只有当主要时间线是动画/程序的准确描述时,这才是准确的。如果AVM1Movie通过代码生成动画或者嵌套了动画片段,那么就没有好的办法知道它什么时候“完成”了。
最好的办法是打开它,并在最后添加一个事件。
发布于 2012-11-13 20:35:54
我使用ForcibleLoader将AVM1Movie加载为MovieClip:
var uic: UIComponent = ....
...
var loader:Loader = Loader(1uic.addChild(new Loader()));
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, startPlay);
var fLoader:ForcibleLoader = new ForcibleLoader(loader);
fLoader.load(new URLRequest("....swf"));然后我检查(movie.currentFrame +1 >= movie.totalFrames)
我使用这个函数来控制uic.click事件来停止和播放电影:
private function controlSwf(event: Event): void {
var e: Event = event;
var movie: MovieClip = MovieClip(Loader(event.target).content);
if (movie.currentFrame + 1 >= movie.totalFrames) {
movie.gotoAndPlay(1);
play = true;
} else if (play) {
play = false;
movie.stop();
} else {
play = true;
movie.play();
}
}https://stackoverflow.com/questions/7954841
复制相似问题