![]() |
|
||||||||||
|
|||||
|
Регистрация: Oct 2012
Сообщений: 20
|
Удалять нужно после завершения анимации.
На форуме нашел 2 способа, 1 с помощью анонимной функции (не совсем его понял) 2 вешать событие на последний кадр анимации. Но вот как в обработчике этого события удалить мувиклип со сцены? В первом случае ошибка, неявное преобразование. А во втором анимация не удаляется а наоборот проигрывается, несмотря на то что в первом кадре она должна остановится. |
|
|||||
|
[+4 24.04.13]
[+4 20.04.13] Регистрация: Feb 2013
Адрес: Seireitei
Сообщений: 176
|
|
|
|||||
|
вот вам пример:
private var clip:MovieClip;//допустим что это какой-то существующий клип public function Test() { addChild(clip); clip.addEventListener(Event.ENTER_FRAME, onClipEnterFrame); clip.play(); } private function onClipEnterFrame(event:Event):void { if (clip.currentFrame == clip.totalFrames) { clip.removeEventListener(Event.ENTER_FRAME, onClipEnterFrame); clip.stop(); removeChild(clip) } }
__________________
местонахождение |
|
|||||
|
[+4 24.04.13]
[+4 20.04.13] Регистрация: Feb 2013
Адрес: Seireitei
Сообщений: 176
|
а чем плохо самоудаление ?
|
|
|||||
|
потому что дети не должны указывать родителям, что им(родителям) делать,.. эта тема 100500 раз поднималась на форуме.
__________________
местонахождение |
|
|||||
|
[+4 24.04.13]
[+4 20.04.13] Регистрация: Feb 2013
Адрес: Seireitei
Сообщений: 176
|
неубедил )
|
|
|||||
|
[+1 05.11.12]
Регистрация: Feb 2011
Сообщений: 431
|
Киньте ссылку на обсуждение пожалуйста.
|
|
|||||
|
Регистрация: Oct 2012
Сообщений: 20
|
Спасибо за советы) Теперь опишу что у меня получилось.
Работает норм если поместить непосредствено в последний кадр. Очищяет всю сцену. А обработчик события EnterFrame почему то не видит обьект clip (обьявлен глобально, создаётся в функции Test из библиотеки). trace(clip) выводит null. |
|
|||||
|
@belyjj, я бы вам советовал начать с азов, вы не понимаете как работает дисплей лист.
вы удаляете this из его родителя, какой результат вы ждали, тогда уж clip.parent.removeChild(clip), но это только в контексте того, что вы написали в последнем топике. @chamele0n, я не собирался вас убеждать в чем-либо, создаете отдельную тему и получите ответы по этой теме. @AlexLucas, извиняйте, я не сохраняю таких ссылок.
__________________
местонахождение |
|
|||||
|
Регистрация: Oct 2012
Сообщений: 20
|
Всё нашел ошибку, про var забыл, получается заново создавался обьект в функции Test.
Только ещё 1 вопрос, а будет работать, если анимация может создаваться в функции Test несколько раз, то есть обьектов clip может быть несколько на сцене, они все удалятся? |
![]() |
![]() |
Часовой пояс GMT +4, время: 11:40. |
|
|
« Предыдущая тема | Следующая тема » |
|
|