Как добавить Mate Listeners с помощью Action Script

В одной из моих форм я использовал следующий код для добавления Mate Listeners

<mate:Listener type="{DBEvent.Update_Result}" receive="{onUpdateResults(event)}"/>

Я отображаю эту форму как всплывающее окно. В первый раз метод onUpdateResults выполняется только один раз, как и ожидалось. Затем я закрываю всплывающее окно и снова открываю его. На этот раз метод onUpdateResults вызывается дважды, затем в следующий раз и так далее...

После стольких поисков я обнаружил, что Mate Listeners все еще активны, хотя мы удаляем / закрываем всплывающее окно. Я пробовал слабые ссылки, закрывал всплывающее окно, используя PopupManager.RemovePopup и так далее. Ничего не сработало.

Затем я подумал о том, чтобы зарегистрировать и отменить регистрацию слушателей помощников вручную, используя скрипт действия. Итак, я попробовал следующий код

var _listener:Listener= new Listener();

_listener.addEventListener(DBEvent.Update_Result,onUpdateResults);

отменить регистрацию...

_listener.removeEventListener(DBEvent.Update_Result,onUpdateResults);

Но это тоже не работает.

Пожалуйста, кто-нибудь, помогите мне решить эту проблему.

1 ответ

Попробуй это.

Создайте всплывающие окна во время выполнения в основном приложении:

PopUpManager.createPopUp(this, MyPopUp, true);

MyPopUp - mx: TitleWindow из MyPopUp.mxml Добавить любых слушателей в OnInit в MyPopUp.mxml:

_listener.addEventListener(DBEvent.Update_Result, onUpdateResults);

Закрыть всплывающее окно при нажатии любой кнопки (событие нажатия кнопки или любая):

PopUpManager.removePopUp(this);
Другие вопросы по тегам