Flex - это система визуального отображения / пользовательского интерфейса. Он предназначен для хранения списка элементов пользовательского интерфейса и обработки различных обновлений элементов в списке отображения.
Проблема в том, что вы никогда не добавляли родительский компонент в список отображения. Это делается с помощью метода AddChild в архитектуре Flex 2/3 Halo или AddElement, если вы используете архитектуру Flex 4 Spark.
После добавления компонента Parent на сцену с помощью метода AddChild этот компонент начнет проходить через компонент lifeCycle, который включает в себя создание его дочерних элементов (с помощью метода createChildren ()), а также определение размера и позиционирования дочерних элементов (с помощью updateDisplayList () ). При определении компонента и дочернего элемента с помощью MXML - например, ваш файл Parent.mxml определяет дочерний класс как дочерний с использованием XML - вызов метода addChild выполняется «автоматически» в фоновом режиме.
Имейте в виду, что жизненный цикл Flex Component - это процесс, который может быть не немедленным. Если вы выполняете addChild на родителя; Возможно, вы не сможете сразу получить доступ к детям этого родителя в следующей строке.
Итак, новые ключевые слова создают новый экземпляр компонента; но он не помещает этот компонент в displayList для обработки менеджерами компоновки Flex Framework.
Одним из способов исправления ситуации может быть изменение в основном файле приложения:
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="created()">
<mx:Script>
<![CDATA[
public function created():void {
myParent.foo();
}
]]>
</mx:Script>
<parent:Parent id="myParent" />
</mx:Application>
Другое может быть так:
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="created()">
<mx:Script>
<![CDATA[
public var myParent:Parent = new Parent();
public function created():void {
myParent.foo();
}
override protected function createChildren():void{
super.createChildren();
this.addChild(myParent);
}
]]>
</mx:Script>
</mx:Application>
Чтобы прочесть подробности об этом материале, прочитайте документы Flex Component LifeCycle. http://livedocs.adobe.com/flex/3/html/ascomponents_advanced_2.html#204762