有几种方法可以做到这一点。最简单的方法(就像"user559142“建议的那样)就是在电影剪辑的时间线的最后一帧上放一个"stop()”命令。只需将其添加到最后一帧。
不幸的是,当MovieClips到达他们的最后一帧时,他们没有发送一个完整的事件;在我看来,这是平台的一个缺点。确保MovieClip在最后一帧停止的更重要的方法是侦听ENTER_FRAME事件,并在当前帧等于最后一帧时调用stop(),如下所示:
代码语言:javascript运行复制your_movie_clip.addEventListener(Event.ENTER_FRAME, function(e:Event):void
{
if (your_movie_clip.currentFrame == your_movie_clip.totalFrames)
{
your_movie_clip.stop();
}
});但是,需要注意的是,如果您取消选中“循环”,当SWF在HTML包装器中发布(和查看)时,您将只能看到未循环的内容,而且即使这样,也只有当您试图阻止循环的内容出现在主时间轴上时才能看到。如果您只是在创作环境中进行预览,或者您的内容有自己的时间轴,并且您试图防止循环,那么您将看不到这种行为。