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 Player でネイティブに定義されている低レベルのオブジェクトです。これまでのどの Flex コンポーネントよりも大幅に軽量です。それがあなたのニーズを満たしているなら、あなたのアプリでそれを使用してみませんか?

SpriteがFlex コンポーネントが行う手の込んだことのすべてを行うわけではないことに注意する必要があります。これにより、Flex アプリでの使用が制限されますが、決して排除されるわけではありません。

確かに、私はSpriteFlex で 's をあまり使用しません。SpriteFlex アプリでa を使用するのに完全に適したシナリオがあることを表明したいだけです。

  • Spriteをマスクとして使用する
  • SpriteFlex コンポーネント内の子オブジェクトに を使用する
  • Graphics軽量オブジェクトで API を使用してプログラムによる描画を行う

あなたの特定のシナリオでは、すでに行われた提案は適切です。それらについてさらに説明します。

  • 四角形だけが必要な場合は、スプライトに四角形を描画するだけではどうですか? すでに何か他のものを描く計画を立てているようです。
  • FXG は素晴らしいです。Spark グラフィックス プリミティブ ( など) に似た構文を持っているRectので、なじみがありません。Flex アプリで FXG オブジェクトをインスタンス化するときは、SpriteVisualElement. したがって、FXG で宣言的に作成した描画は としてインスタンス化でき、そのAPI にSpriteVisualElementアクセスして追加の描画を行うことができます。Graphics
于 2012-11-02T18:55:14.613 に答える