Очень мало примеров и уроков по StarlingMVC. Не могу разобраться вот с чем:
Если есть вью (пусть будет ParentView), в который нужно вложить другой (ChildView). Как правильно это делать нигде не сказано.
Как я понял, ViewManager предназначен только для сцены и работы с вьюхами "верхнего уровня", он тут ни при чем. Если добавлять ChildView в конструкторе ParentView, медиатор к ChildView не создается. Значит, надо это делать на [PostConstruct], и с первого взгляда это работает. Но, магия: Если сделать addChild(childView) не непосредственно в parentView, а какой-нибудь контейнер, просто спрайт, являющийся ребенком parentView, медиатор для childView не создастся, если addChild(контейнер) был в конструкторе, а не в [PostConstruct].
Так работает:

Код AS3:
//ParentView.as
//...
public function ParentView()
{
container = new Sprite();
}
[PostConstruct]
public function postConstruct():void
{
addChild(container);
childView = new ChildView();
container.addChild(_childView);
}
А так нет:

Код AS3:
//ParentView.as
//...
public function ParentView()
{
container = new Sprite();
addChild(container);
}
[PostConstruct]
public function postConstruct():void
{
childView = new ChildView();
container.addChild(_childView);
}
Все другие варианты не работают (кроме перенести container = new Sprite(); в [PostConstruct]). Но подозреваю, что и вместо этого работающего варианта подразумевалось что-то более гладкое, ведь [PostConstruct] и [PreDestroy] вызываются всякий раз, когда объект добавляется на сцену и удаляется с нее, поэтому приходится добавлять флаг на инициализацию.
Как правильно создавать вью? Использовать [Inject]? Единственных пример по StarlingMVC использует только вью верхнего уровня и ViewManager, который бесполезен в более сложном случае.
Ну, или если свести вопрос к более общему: при каких условиях StarlingMVC создает медиаторы для вьюх?
Добавлено через 19 часов 14 минут
Хотя, к черту этот StarlingMVC. Переведу на Robotlegs.