Просмотр полной версии : Как убрать все клипы с экрана?
Вроде бы простая штука, а решение не могу найти.
Весь экран в клипах, добавленых динамически, т.е. с чудовищными именами :)
Хочу перейти в другой кадр, а клипы-то остаются висеть на экране !
Есть команда, полностью очищающая экран ?
for (var i in _root) {
if (typeof (_root[i]) == "movieclip") {
_root[i].swapDepths(_root.getNextHighestDepth());
removeMovieClip(_root[i]);
}
}
iflamberg
12.02.2010, 17:47
а swapDepths зачем?
На всякий случай. Если глубина клипа отрицательная, removeMovieClip не сработает. Удаляет даже те клипы, которые были вручную помещены на сцену, в общем.
Или так:
for (var i in _root) {
if (_root[i] instanceof MovieClip) {
removeMovieClip(_root[i]);
}
}
Ого, мне казалось, что это настолько очевидная вещь, что есть специальная функция, а не нужно изголяться с кодом.
Спасибо большое !
есть ход конем - закрыть все что есть на экране специальным фоном
или держать клипы разных сцен в разных мувиках
xxx._visible = false; //и нет ничего лишнего
А так же можно создать
var mcLoader:MovieClipLoader = new MovieClipLoader();
а затем пользоваться при случае
mcLoader.unloadClip(target);
где target - любой клип, можно и _root прописать. Отчистит только всё содержимое.
Ого, мне казалось, что это настолько очевидная вещь, что есть специальная функция, а не нужно изголяться с кодом.
Спасибо большое !
Удаление одного клипа — это очевидная вещь.
Можно просто создать контейнер, в который помещать все клипы, которые необходимо удалить. Затем просто удалять этот контейнер.
_root.setMask(_root.createEmptyMovieClip('mc', 1234));
:D
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.