#flash #air #adobe
#вспышка #воздух #саманный
Вопрос:
У меня такая проблема:
У меня есть несколько видеороликов с двумя разными дочерними элементами: «instruction» и «back_anim». Они имеют ту же структуру, за исключением одной вещи: «инструкция» имеет классическую анимацию, «back_anim» имеет «анимацию формы». Я запускаю его на Adobe Air 2.6 для Android. На каждом из этих чайлдов есть две надписи: «показать», «скрыть». Присутствуют все стоп-кадры. И у меня есть такой код для их управления:
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); следующий кадр после стоп-кадра — все в порядке. В чем дело? Кто-нибудь сталкивался с такой проблемой? Спасибо.
Ответ №1:
Я решил эту странную проблему, создав movieclip со всеми элементами из stage функция gotoandstop, похоже, работает с movieclips, но не со сценой напрямую.
Надеюсь, я помог!
Ответ №2:
Я решаю эту проблему. Может, кому-нибудь это поможет.
http://www.kirupa.com/forum/showthread.php?335765-gotoAndPlay()-and-frame-script-stop()