【发布时间】:2011-05-11 00:33:25
【问题描述】:
我一生都无法弄清楚为什么会发生这种情况。让我描述一下我的经历。
我通过 actionscript 动态添加所有内容。
在 Flash 创作环境中,当我测试影片时,有时舞台上的所有影片剪辑都消失了,我看到的只是舞台的颜色。
奇怪的是我仍然可以翻转/转出(我在我的翻转/转出处理程序中添加了跟踪语句)。 我也在追踪 'visible' 和 'alpha' 属性以及 visible=true 和 alpha=1.0 !!! 我am 看到的事情是,有时会快速连续多次调用翻转/推出方法。 IE。方法调用顺序为rollover、rollout、rollover或rollout、rollover、rollout。
我在翻转和转出方法中的操作真的很简单。他们所做的只是打开/关闭其他电影剪辑...想象一下地图...当您滚动图标时,地图上会显示一条路径,当您滚动时,路径会消失。
但是,如果我调整测试电影窗口的窗口,一切都会再次出现!
疯狂的是,当我发布它时,这种行为不会发生在浏览器或应用程序中!
发生了什么事?这可能是创作环境的记忆吗?
在这里发布一些代码:
private function rollOverUserListener ( e:MouseEvent ) {
trace(">>>>>>>> rollOverUserListener() e.currentTarget.name : " + e.currentTarget.name);
trace("e.currentTarget.alpha: " + e.currentTarget.alpha);
trace("e.currentTarget.visible: " + e.currentTarget.visible);
e.currentTarget.rollOverAction(); //just scales the icon a little
//fade up/down the appropriate path
worldMap.resetPaths(); //turns off all the paths
for (var i=0; i<users.length; i++){
if ( e.currentTarget == users[i] ) { //highlight the right path
worldMap.highlightPath(i);
}
}
}
private function rollOutUserListener ( e:MouseEvent ) {
trace("<<<<<<<< rollOutUserListener() e.currentTarget.name : " + e.currentTarget.name);
e.currentTarget.rollOutAction(); //scales down the icon to normal
worldMap.resetPaths();
}
【问题讨论】:
-
可能与你不知不觉播放的时间线有关?您是否使用了不止一帧的时间线,或使用了任何 Event.ENTER_FRAME 事件?
-
好问题亚历克斯。我没有在主时间线上使用任何额外的帧。我还只是在主时间线中的唯一帧中添加了一个 stop() 动作,以防万一...... :)
-
您使用的是 Mac 吗?我的一位喜欢 Mac Pro 的同事经常在 IDE 中遇到这个问题,而我们从未找到解决方案。
标签: actionscript-3