#flash
#flash
Вопрос:
Это действительно вопрос об основах, но я хочу убедиться, как это работает. Итак, у меня есть символ MovieClip с 5 кадрами (назовем его основным MovieClip), каждый кадр содержит отдельный символ MovieClip, и каждый из этих символов имеет небольшое движение в них. Если, допустим, я перейду к 3-му кадру в главном видеоролике:
object.gotoAndStop(3);
Затем анимация небольшого движения символа, которая содержит кадр 3, автоматически запускается, как я видел. Итак, я думаю, здесь останавливаются ли другие кадры (1, 2, 4 и 5), которые, однако, не видны на сцене, и мне не нужно беспокоиться об остановке каждого из них самостоятельно (например, прикрепляя код к каждому 1-му кадру для вызова .stop()
)?
Потому что, если бы я сейчас позвонил прямо сейчас, object.gotoAndStop(1);
это сразу же запустило бы анимацию этого кадра. Просто заставляет меня задуматься.
Ответ №1:
Вам не нужно вручную останавливать видеоролики, они обычно разыменовываются (уничтожаются) по истечении срока действия их ключевых кадров. И создаются после ввода их ключевого кадра.
Повторюсь, они не СУЩЕСТВУЮТ до и после их ключевого кадра. Конечно, не совсем верно (сборка мусора), но для иллюстративных целей этого достаточно. Нет необходимости «останавливать» их временные рамки, поскольку они не существуют, и как только их ключевой кадр создаст их, они будут перезапущены с кадра 1 (без fancy actionscript, конечно).
Это справедливо только для видеороликов timeline, созданные actionscript видеоролики по-прежнему будут иметь ссылки и будут сохраняться при смене кадров, если мне не изменяет память.
Поэтому MC actionscript необходимо обработать вручную (вызвать removeChild() и разыменовать их ссылку, если таковая имеется).