Жизненный цикл Flex Component с меню - лучшая практика - PullRequest
1 голос
/ 26 июня 2009

Я создал в Flex многозадачное приложение с различными пользовательскими ролями. Я использую стек просмотра с панелью меню для навигации по страницам.

Однако - каждый раз, когда открывается страница, мне нужно выполнить несколько вызовов базы данных, применить настройки роли пользователя и т. Д. В функции init (). Эта функция инициализации может ссылаться на некоторые элементы пользовательского интерфейса этой страницы.

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

Теперь я включил его в событие "show", но, похоже, это происходит не последовательно или до того, как страница полностью создается в первый раз.

Какая лучшая практика для этого случая? * Я должен передать данные * Вызов функции инициализации (вызовы базы данных) * Манипулировать компонентами

В идеале мне понадобится способ вызывать init каждый раз, когда страница загружается и после создания всех компонентов.

Спасибо за вашу помощь, Martin

Ответы [ 3 ]

0 голосов
/ 26 июня 2009

Попробуйте updateComplete событие.

Отправляется, когда для объекта были вызваны методы commitProperties (), measure () и updateDisplayList () (при необходимости).

Это последняя возможность изменить компонент перед его отображением. Все свойства были переданы, и компонент был измерен и выложен.

0 голосов
/ 27 апреля 2011

У меня была такая же проблема, когда я обернул s:Group классом-оберткой, чтобы поместить его в TabNavigator. Результат show show не вызывается. Наконец, я изменил все свои s:Group на mx:Canvas, непосредственно поместил их в TabNavigator (То же самое касается и ViewStack). После этого creationComplete событие вызывалось один раз, а последующие посещения страницы вызывают show из mx:Canvas

0 голосов
/ 26 июня 2009

Просто идея, но почему бы не попытаться выполнить удаленный вызов с эффектом изменения ViewStack. Вы можете использовать интерфейс для этого, который реализует ваши представления.

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