|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
[StarlingMVC] Логика создания вью
Очень мало примеров и уроков по StarlingMVC. Не могу разобраться вот с чем:
Если есть вью (пусть будет ParentView), в который нужно вложить другой (ChildView). Как правильно это делать нигде не сказано. Как я понял, ViewManager предназначен только для сцены и работы с вьюхами "верхнего уровня", он тут ни при чем. Если добавлять ChildView в конструкторе ParentView, медиатор к ChildView не создается. Значит, надо это делать на [PostConstruct], и с первого взгляда это работает. Но, магия: Если сделать addChild(childView) не непосредственно в parentView, а какой-нибудь контейнер, просто спрайт, являющийся ребенком parentView, медиатор для childView не создастся, если addChild(контейнер) был в конструкторе, а не в [PostConstruct]. Так работает: //ParentView.as //... public function ParentView() { container = new Sprite(); } [PostConstruct] public function postConstruct():void { addChild(container); childView = new ChildView(); container.addChild(_childView); } //ParentView.as //... public function ParentView() { container = new Sprite(); addChild(container); } [PostConstruct] public function postConstruct():void { childView = new ChildView(); container.addChild(_childView); } Как правильно создавать вью? Использовать [Inject]? Единственных пример по StarlingMVC использует только вью верхнего уровня и ViewManager, который бесполезен в более сложном случае. Ну, или если свести вопрос к более общему: при каких условиях StarlingMVC создает медиаторы для вьюх? Добавлено через 19 часов 14 минут Хотя, к черту этот StarlingMVC. Переведу на Robotlegs. |
|
|||||
Нашел один пример использования StarlingMVC проекта FB4.7
Классы медиаторы пользуются тегом [ViewAdded] и [ViewRemoved]. Robotlegs мне тоже по душе, но этот фреймворк ничем кардинально не отличается. Плюшка его в том, что он имеет Bindings для привязки данных и он более адаптирован к самому Starling -keep-as3-metadata+=Dispatcher -keep-as3-metadata+=EventHandler -keep-as3-metadata+=Inject -keep-as3-metadata+=Juggler -keep-as3-metadata+=PostConstruct -keep-as3-metadata+=ViewAdded -keep-as3-metadata+=ViewRemoved -keep-as3-metadata+=Bindings -keep-as3-metadata+=PreDestroy -keep-as3-metadata+=Execute http://www.thebitcrew.com/downloads/...VC_example.zip Последний раз редактировалось qweX; 31.05.2013 в 05:09. Причина: пример: |
Часовой пояс GMT +4, время: 16:00. |
|
« Предыдущая тема | Следующая тема » |
Теги |
starlingMVC |
|
|