2015-08-15 85 views
0

容器的Child和Element之间有什么区别? 为什么像Spark VGroup这样的容器对Child和Elements都有不同的方法集?容器的Child和Element之间有什么区别?

任何人都可以用最简单的方式解释我的区别吗? 在此先感谢...

+0

嘿,请看我的回答,如果回答你的问题,请接受它。谢谢。 –

回答

0

addChild方法用于添加DisplayObject,这是一个纯粹的动作方法。所以,你通常会加雪碧,影片剪辑等,广泛应用于基于动作脚本项目

Flex的类,如VGroup都写在基地ActionScript类的顶部,因此有一个额外的addElement方法能够添加IVisualElement ,这也可以是例如一个FXG,或其它基于Flex组件如UIComponentGroup

然而,我怀疑在VGroup主叫addChild实际上将提供期望的结果,并且可能导致错误。

希望这回答你的问题。

0

在Flex SDK 4.0中引入了IVisualElement和所有*Element方法中的IVisualElementContainer作为spark布局和生命周期特性的一部分。

您仍然可以根据UIComponents自由构建自己的组件,而不必使用火花功能,只能使用*Child方法。

那当然DisplayObjectContainer延长所有类继承*Child的方法,但在像Group(和SkinnableComponent)班的方法已被覆盖抛出一个错误,因为一个需要使用*Element方法使用Spark功能。

由于Flex 4支持使用MX布局以及Spark布局(在编译时可以选择仅使用其中的一个或两个并排),因此这些方法在GroupSkinnableComponent之间无法标记为弃用,至极至少会触发编译器警告而不是运行时错误。

相关问题