Проблемы с удалением компонента FLV seekBar со стадии в AS2 SWF - PullRequest
0 голосов
/ 07 февраля 2011

У меня есть AS2 swf, который загружает видео FLV в компонент FLVPlayback и присоединяет компонент seekBar. Когда видео останавливается, я выгружаю панель поиска с экрана и устанавливаю FLVPlayback.seekBar = null. Когда нужно воспроизвести другое видео, я снова настраивал панель поиска, прикрепляя компонент seekBar к сцене и назначая FLVPlayback.seekBar = newSeekBarInstance.

Вот мой код -

(my_video = FLVPlayback компонент)

var theSeekBar = _root.attachMovie("SeekBar", "vidSeekBar", this.getNextHighestDepth());
_root.my_video.seekBar = theSeekBar;

Когда видео остановлено -

_root.my_video.seekBar = null;
_root.vidSeekBar.handle_mc.unloadMovie();
_root.vidSeekBar.unloadMovie();
_root.vidSeekBar.removeMovieClip();

Что я заметил, так это то, что иногда панель поиска удаляется с экрана, а иногда нет? Я не могу заметить здесь какую-либо закономерность. У кого-нибудь были подобные проблемы? Нужно ли форсировать сборку мусора?

1 Ответ

0 голосов
/ 07 февраля 2011

unloadMovie() работает только для клипов, которые вы загрузили с loadMovie().Это не окажет никакого влияния на другие экземпляры сцены.

Так что если вы создали свой экземпляр на сцене с использованием attachMovie(), removeMovieClip() и для переменной seekBar установите значение null, этого должно быть достаточно для сбора мусораЕсли у вас больше нет ссылок на него (возможно, на слушателей событий?) где-то еще.

Я согласен с @duncmc: вам следует просто спрятать панель поиска, а не создавать и удалять ее снова и снова.

...