容器的Child和Element之间有什么区别? 为什么像Spark VGroup这样的容器对Child和Elements都有不同的方法集?容器的Child和Element之间有什么区别?
任何人都可以用最简单的方式解释我的区别吗? 在此先感谢...
容器的Child和Element之间有什么区别? 为什么像Spark VGroup这样的容器对Child和Elements都有不同的方法集?容器的Child和Element之间有什么区别?
任何人都可以用最简单的方式解释我的区别吗? 在此先感谢...
addChild
方法用于添加DisplayObject
,这是一个纯粹的动作方法。所以,你通常会加雪碧,影片剪辑等,广泛应用于基于动作脚本项目
Flex的类,如VGroup都写在基地ActionScript类的顶部,因此有一个额外的addElement
方法能够添加IVisualElement
,这也可以是例如一个FXG,或其它基于Flex组件如UIComponent
,Group
等
然而,我怀疑在VGroup
主叫addChild
实际上将提供期望的结果,并且可能导致错误。
希望这回答你的问题。
在Flex SDK 4.0中引入了IVisualElement
和所有*Element
方法中的IVisualElementContainer
作为spark布局和生命周期特性的一部分。
您仍然可以根据UIComponents自由构建自己的组件,而不必使用火花功能,只能使用*Child
方法。
那当然DisplayObjectContainer
延长所有类继承*Child
的方法,但在像Group
(和SkinnableComponent
)班的方法已被覆盖抛出一个错误,因为一个需要使用*Element
方法使用Spark功能。
由于Flex 4支持使用MX布局以及Spark布局(在编译时可以选择仅使用其中的一个或两个并排),因此这些方法在Group
和SkinnableComponent
之间无法标记为弃用,至极至少会触发编译器警告而不是运行时错误。
嘿,请看我的回答,如果回答你的问题,请接受它。谢谢。 –