当在Sprite中使用来自Flex api的mx:Canvas时,我得到一个TypeError:错误#1009并且跟随堆栈:
> StyleManager/getStyleManager
> StyleProtoChain/getStyleManager
> StyleProtoChain/initProtoChain
> UIComponent/initProtoChain
> UIComponent/regenerateStyleCache
> Container/regenerateStyleCache
我想这是因为它需要额外的初始化,通常由应用程序/父程序容器操作。
有没有人成功体验过这样的包装,或者,是否有替代mx:Flash / AS3中的Canvas?
如果不可能的话,我会选择一个特定的动作脚本,或者一个风格化的Mx应用程序。
答案 0 :(得分:1)
您不能在纯Flash应用程序中使用Flex UI组件。你不能把Flex组件放在Sprite中:阅读它的生命周期,Convas希望在它的父级中看到很多东西。
我看到的唯一解决方案是使用混合内容(Flash和Flex)的Flex应用程序,条件是Flex组件不在Sprite中。
Flash中Canvas的替代品是Sprite(ta-da!)。最大的区别在于其大小计算和外部设置(例如How to calculate the size of a sprite?)。