Flex Viewstack的孩子,如果你看不到他们,他们存在吗?

时间:2009-02-05 23:44:47

标签: flex actionscript-3 adobe viewstack

我似乎遇到了一个问题(无法访问null对象引用的属性或方法)将actionscript中的事件绑定到当前未显示的viewstack层。是否在第一次看到该图层之前才创建这些对象?我记得有关创建策略的一些内容,如果是这种情况,我可以强制它在查看该层之前创建这些子项吗?

3 个答案:

答案 0 :(得分:16)

是的,没错 - ViewStack子项只在默认情况下需要时创建(“延迟实例化”是您在此上下文中会听到的一个短语)。如果您希望指示Flex预先创建所有ViewStack容器的子项,请考虑使用所有mx.core.Containers共有的 creationPolicy 属性:

  

创建策略   ContainerCreationPolicy.ALL意味着   导航器容器立即   为每个人创造更深层次的后代   孩子,而不是等到那个   孩子被选中了。

<mx:ViewStack id="myStack" creationPolicy="all" />

启动时速度有点慢,因为你正在创建一些你可能不需要的子组件,但只要你记住这种权衡,它可能会在某个时候派上用场。

答案 1 :(得分:2)

是的,我在处理具有PureMVC结构的应用程序时遇到了同样的问题。我无法为ViewStack的子组件创建调解器,因为它们是由Flex框架懒得构建的。

这是我最终找到解决方案的地方:

http://forums.puremvc.org/index.php?topic=280.0

答案 2 :(得分:0)

找到相关文档here。似乎这是你在容器文档上记下的东西。

相关问题