我在Flex应用程序中使用Starling。该应用程序正在使用Parsley框架并在视图上执行IOC。
Starling并非常规Flash显示对象。通常在Parsley项目中,如果我想在创建视图时动态注入,我将只调用Configure.view(this).execute(),一切都很好。
我想知道是否有一种方法可以在不使用Configure.view的情况下将数据模型动态地注入到Starling视图中,感觉Starling视图不是普通Flash显示列表中的DisplayObject。
最佳答案
在我发布此问题大约一个小时后,我通过与曾经为powerflasher / FDT工作并从内到外了解Parsley的Patrick Kulling交谈找到了解决方案。
基本上,您必须获取Parsley Context的实例,然后像这样调用context.addDynamicObject。
[Inject]
public var context:Context;
[Init]
private function onImagesReady( event : Event = null ) : void
{
//star.root gives us a ref to MainGame witch is our starling view
//that want parsley to do IOC on
context.addDynamicObject(star.root);
}
//here is where we call the starling code and it creates an instance
private function onCC() : void
{
star = new Starling( MainGame, stage );
star.viewPort = new Rectangle(0, 0, width, height);
star.start();
}