Компонент LifeCycle Flex представляет собой набор методов и событий, которые Flex использует для настройки компонентов.В наших собственных компонентах, которые расширяют класс UIComponent, мы можем прослушивать эти события или переопределять эти методы, чтобы делать вещи, специфичные для нашего компонента.
Я добавлю, что updateDisplayList () - это метод, а несобытие, на всякий случай их путаница.
Это основные переопределяемые методы:
- createChildren () : используется для создания компонентадети.
- commitProperties () : Это метод подстановочных знаков.Вы используете его для координации нескольких изменений свойств в одном месте.То, для чего вы его используете, зависит от компонента, который вы создаете, и свойств.
- measure () : используется для установки «идеальной» высоты и ширины компонента на основена детей.Вы устанавливаете measureHeight и measureWidth.
- updateDisplayList () : используется для отображения всего, что связано с отображением, чаще всего для определения положения и размера дочерних элементов компонента.
Все эти методы будут работать во время первоначального создания компонента.Однако три из этих методов - commitProperties (), measure () и updateDisplayList () - можно настроить для запуска во время следующего события рендеринга.Чтобы подготовить их к запуску, просто аннулируйте их, используя соответствующий метод аннулирования:
- invalidateProperties () заставляет commitProperties () перезапускаться.
- invalidateSize () заставляет measure () перезапускаться.
- invalidateDisplayList () принудительно перезапускает updateDisplayList ().
Частота срабатывания событий рендеринга зависит от частоты кадров вашего приложения.Я думаю, что частота кадров Flex по умолчанию составляет 24 кадра в секунду, поэтому каждые 1/24-й секунды происходит одно событие рендеринга.
Я определил жизненный цикл компонента как набор методов и событий.Итак, это события в порядке их запуска:
- preinitialize
- initialize
- childAdd
- updateComplete
- creationComplete
updateComplete будет срабатывать после каждого события визуализации, я полагаю.Но другие являются частью создания компонента.
Вы должны прочитать документацию по Flex на этом
В жизненном цикле компонента Spark добавлены различные крючки для соответствия подходу двух классов;с одним классом для бизнес-логики и один для скинов.Тем не менее, это продлевает жизненный цикл компонента MX / Halo.