2012-01-17 8 views
2

ゲーム内でムービークリップの内側にあるテキストフィールドの色を変更しようとしています。私はこれを使用してムービークリップの色を変更します。mcでtransform.colortransformを実行した後、mc内のテキストフィールドの色を変更できません

のvar newcolorは:のColorTransform =新しいのColorTransform(); //色の変化

newColor.color =×000000;

circle.transform.colorTransform = newColor;

これは問題なく動作します。しかし、A(public var A:TextField = new TextField())と呼ばれるthis.addChild()を使用して、円を描くテキストフィールドを追加しました。 transform.colortransformを使用した後、A.textColor = 0xFFFFFFを使用してAのテキストの色を変更しようとすると、円の色はまだ黒くなり、Aも黒くなります。 Aのテキストの色を変更する頻度を問わず、黒のままです。

何が問題になる可能性がありますか?

おかげで、 FF

答えて

1

ColorTransformsは、ムービークリップのすべてのコンテンツ(と子供)に適用されます。 TextField(または他のDisplayObjectの子)がどの色であるかは関係ありません。すべてが黒くレンダリングされます。あなたのオプションは次のとおりです:

  • 黒のcolorTransformは親のMovieClipではなく、黒にする円に適用します。

親の外のMovieClip

をTextFieldを動かし

これは、幾何学的変換と同じです - あなたは親ムービークリップを回転させた場合、内部の子供たちは、すべてのそれに応じて回転されます。

+0

これで、いったん色変換がムービークリップに適用されると、テキストフィールドの色を変更することはできません。 – user1154649

+0

短い答え、はい。親の色変換が変更を隠すので、テキストの色を変更しますが、表示しません。 あなたがする必要があるのは、同じ親のサークルとテキストの子を作成し、そのサークルにのみカラー変換を適用することです。 –

関連する問題