0

我正在尝试创建一个简单的画廊。我创建了一个包含 4 帧图片的画廊影片剪辑。上面的代码适用于一个触发器。图库 mc 移动到第 2 帧并显示第二张图像。下一个触发器(再过 2 秒后)无法正常工作。它卡住了(例如舞台的其他按钮不再可点击)。如果我跟踪 NextPhoto 函数,它会输出两次,仅此而已。我错过了什么,第二个触发器不起作用?

import flash.utils.Timer;
stop();
gallery1.stop();

var myTimer:Timer = new Timer(2000);
myTimer.addEventListener(TimerEvent.TIMER, NextPhoto);
myTimer.start();

function NextPhoto(TimerEvent):void
{
    if (gallery1.currentFrame < gallery1.totalFrames){
        gallery1.gotoAndStop(gallery1.currentFrame+1);
    }
    else if (gallery1.currentFrame == gallery1.totalFrames){
        gallery1.gotoAndStop(1);
    }
}
4

2 回答 2

0

谢谢大家的回答,最终这只是一个内存问题。当我 Alt+Enter 进入项目时,它不起作用。当我在 Projector 上发表文章时,它奏效了。好像CS6最近消耗太多内存,或者我应该升级我的塔......

于 2013-10-31T14:51:14.640 回答
0

我不太能得到你的代码,因为我是一个 Flex 类型的人。但是我可以从您的代码中猜到您的 Timer 在第一次执行后没有重新启动。您应该为每一帧重新启动计时器,直到执行 NextPhoto(e:TimerEvent) 的最后一帧。

于 2013-10-30T13:41:49.297 回答