Flash ComboBox останавливает воспроизведение потока AS3 - PullRequest
0 голосов
/ 17 сентября 2009

Хорошо, этот сводит меня с ума. Я сделал собственный видеоплеер в CS4. По сути, я просто использовал Gimp для рисования видеоплеера и сохранил его в формате PNG, который я перетащил на сцену.

Я не хотел использовать FLVPlayback, поэтому я использовал Actionscript для добавления видео на сцену.

var video:Video = new Video(480,360);
addChild(video);

Я избавлю вас от подробностей того, как я подключил его, но он работает отлично. Проблема начинается, когда я пытаюсь перетащить ComboBox на сцену. Прежде чем я добавлю какие-либо обработчики или что-либо еще, если я выберу элемент из ComboBox, он останавливает воспроизведение на моем видео (и NetStream). Wierd! Зачем? И как мне не допустить этого?

1 Ответ

0 голосов
/ 18 сентября 2009

Хорошо, я чувствую себя чертовски умно сейчас, когда я понял это. Конечно, я был бы умнее, чтобы не вызвать ошибку в первую очередь. Это была проблема сбора мусора, и она вообще не имела никакого отношения к ComboBox. Оказывается, нажатие на ComboBox вызвало достаточно мусора объекта, чтобы вызвать сборщик мусора.

Мой NetStream умирал, не вызывая обработчик событий, потому что он собирал мусор. Я не держал ссылку на это в своем коде. Я не думал, что должен был, потому что я позвонил video.attachStream(ns) и держал ссылку на video. Однако класс Video, очевидно, также не содержит ссылки на NetStream.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...