вызвать flex initComplete в определенное время - PullRequest
2 голосов
/ 31 мая 2010

Ниже приведена переопределенная функция завершения для прелоадера во Flex.

private function initComplete(e:Event):void
  {
   //dispatchEvent(new Event(Event.COMPLETE));
   cp.status.text="Configuring... Please Wait";
  }

Что я хочу сделать, когда приложение завершило загрузку, я хочу изменить текст предзагрузчика на «конфигурирование».Затем я хочу пойти и сделать кучу настроек в своем коде.

После того, как я выполнил всю настройку, я хотел, как я могу заставить Preloader отправлять свой Event.complete из другого места в моем коде?

Я попробовал Application.application.preloader, но он обнуляется.

Так что я думаю, что мой вопрос на самом деле заключается в том, как получить доступ к preloader из любого места в моем приложении.Будет ли лучший подход, чтобы все классы установки были членами моего класса preloader?

Ответы [ 2 ]

1 голос
/ 04 июня 2010

Одна вещь, которая может помочь, это шаблон Model-View-Controller. Используете ли вы фреймворк для своего приложения, например Mate, Swiz или Cairngorm?

Например, если вы используете Mate , вы можете сделать что-то вроде этого:

  • Создание класса AppStateManager со свойством (например, applicationState)
  • Создайте EventMap с EventHandler для события FlexEvent.INITIALIZE. В этом обработчике установите для AppStateManager.applicationState что-то вроде «CONFIGURING»
  • В вашей EventMap есть инжектор, который внедряет свойство applicationState в представление. Инжектор прослушивает изменения этого свойства и обновляет представление. В этом случае он может быть просто введен в ваш основной вид.
  • В главном представлении у вас есть общедоступное связываемое свойство, также называемое applicationState, которое вводится Mate.
  • В установщике этого свойства у вас может быть if / then или переключатель, который выполняет разные задачи в зависимости от состояния. Например, если applicationState == "COMPLETE", то this.preloader.dispatchEvent (Event.COMPLETE) или что-то в этом роде.

Детали псевдо-наброски, но идея состоит в том, чтобы использовать привязки Flex для уведомления компонентов представления о внесенных изменениях и иметь общие объекты, которые поддерживают состояние. Не уверен, что это то, что вы ищете ...

0 голосов
/ 31 мая 2010

Компонент LifeCycle делает определенные вещи в определенном порядке, и ближайший последний элемент должен сделать компонент видимым.

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

Какого рода приложения для запуска приложений вам нужно сделать?

...