我在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();
            }

08-26 04:58