0

我想将 Rect 添加到 Sprite,但失败了。一个 Rect 只能用 addElement 添加,而 Sprite 没有(只有 addChild)。有什么选择?

4

2 回答 2

1

不,您实际上不想使用 Sprites 或 MovieClips。Flex 中的 UI 层基于 UIComponent,因此框架希望将此类用作基类。测量/调整大小、定位等基于 Flex 组件生命周期,必须由组件显式/隐式实现才能与框架一起使用。

其他一切都是与框架的斗争,失去了很多好处。

于 2012-10-30T10:41:49.590 回答
0

原则上,我有点不同意@Florian Salihovic 的回答。ASprite是在 Flash 播放器中本地定义的低级别对象。它比任何 Flex 组件都要轻得多。如果它满足您的需求,为什么不在您的应用程序中使用它呢?

您只需要注意,它Sprite不会完成 Flex 组件所做的所有花哨的事情。这限制了它在 Flex 应用程序中的使用,但无论如何并不排除它。

当然,我不Sprite经常在 Flex 中使用 's。我只想说没关系,并且Sprite在您的 Flex 应用程序中使用 a 的场景非常好:

  • 使用 aSprite作为掩码
  • Sprite对 Flex 组件内的子对象使用 a
  • Graphics在轻量级对象上使用 API进行编程绘图

对于您的具体情况,已经提出的建议很好,我将对其进行更多说明:

  • 如果您只需要一个矩形,那么在 Sprite 上绘制矩形怎么样?听起来你已经打算在上面画点别的东西了。
  • FXG 很棒,它的语法类似于 Spark 图形基元(如Rect),因此不会感到陌生。当您在 Flex 应用程序中实例化 FXG 对象时,您将其键入为SpriteVisualElement. 因此,您在 FXG 中以声明方式制作的绘图可以实例化为 a SpriteVisualElement,然后您可以访问它的Graphicsapi 以在其上进行额外的绘图。
于 2012-11-02T18:55:14.613 回答