0

我正在处理我的项目,需要在 flash 中创建温度计组件(组件将显示当前温度值)。所以我决定使用 Sprite (flash.display.Sprite) 组件作为包装器并创建了这些子组件:

  • flash.display.Bitmap, BitmapData - 背景,温度计图像
  • flash.text.TextField - 文本(带有单位的当前温度值)
  • flash.display.Shape - 温度计条

接下来我需要添加一些闪烁的文本(缺失值),最好使用mx.contols.Label(或火花标签)组件(支持 AnimateColor)。但是当我将新的标签组件添加到包装器时,添加的标签不会显示。所以我想知道是否可以mx.controls.*向Sprite添加组件或推荐什么解决方案。

4

1 回答 1

0

mx 组件必须在 Flex 框架的上下文中使用。如果您将 Flex 组件添加到非 Flex 容器(例如 Sprite),那么您正在使用 Flex 上下文之外的组件,而 Flex 框架类(例如 LayoutManager)将不知道调用此类方法如 measure()、createChildren()、updateDisplayList() 或 commitProperties()。

如果这是你想要做的;那么没有出现的原因是因为组件没有通过它的Flex Component LifeCycle;因此没有任何东西可以显示。

如果您在 Flash Pro 中构建某些东西,或者在 Flash Builder 中使用仅 ActionScript 的项目,那么您可能没有使用 Flex 框架,我不希望该组件能够工作。但是,如果是这种情况,我希望您会看到由于缺少依赖项而导致的编译错误。

于 2013-04-10T14:51:14.483 回答