我有这样的问题:
我有一些带有两个不同孩子的电影剪辑:“instruction”和“back_anim”。它们具有相同的结构,除了一件事:“指令”具有经典补间,“back_anim”具有“补间形状”。我在Adobe Air 2.6 for Android上运行它。每个孩子都有两个标签:“show”,“hide”。所有停止帧都存在。我有这样的代码来控制它们:
protected function fadeOut(event:Event):void {
line_mc.removeEventListener(Event.COMPLETE,fadeOut);
if (line_mc.hasOwnProperty('back_mask_anim')){
line_final_anim_count++;
(line_mc['back_mask_anim'] as MovieClip).addEventListener(Event.ENTER_FRAME, checkFinalAnimComplete);
(line_mc['back_mask_anim'] as MovieClip).gotoAndPlay("show");//show
}
if (line_mc.hasOwnProperty('instruction')){
line_final_anim_count++;
(line_mc['instruction'] as MovieClip).addEventListener(Event.ENTER_FRAME, checkFinalAnimComplete);
(line_mc['instruction'] as MovieClip).gotoAndPlay('hide');
}
if(line_final_anim_count == 0){
setTimeout(lineComplete,time_before_fade_out);
}
}
protected function checkFinalAnimComplete(event:Event):void {
var anim_mc:MovieClip = event.currentTarget as MovieClip;
trace("anim_mc.frame " + anim_mc.currentFrame + " of " +anim_mc.totalFrames +
"name = " + anim_mc.name);
if(anim_mc.currentFrame == anim_mc.totalFrames) {
anim_mc.removeEventListener(Event.ENTER_FRAME, checkFinalAnimComplete);
line_final_anim_count--;
}
trace("line_final_anim_count: " + line_final_anim_count);
if(line_final_anim_count == 0){
lineComplete();
}
}
但!!! “指令” - 效果很好,“back_anim” - 在停止帧上进入无限循环。 当我这样做时:( line_mc ['back_mask_anim']为MovieClip).gotoAndPlay(7);停止帧后的下一帧 - 一切正常。怎么了?有人面对这样的问题吗?感谢名单。
答案 0 :(得分:1)
我通过创建一个包含舞台上所有内容的movieclip解决了这个奇怪的问题,gotoandstop函数似乎可以与movieclips一起使用,但不能直接与舞台一起使用。
希望我帮忙!
答案 1 :(得分:0)