0

別のプログラムから変更できる画像を Flash ファイルに保存したいと考えています。

ActionScript 2 では、 を使用して Loaderを設定し、タイムラインでcontentPathを作成しましたMotiontweenが、これは非常にうまく機能しました。

しかし、Actionscript 3 でも同じことを行い、 を使用しUILoader、 を設定してsourceを作成しますMotiontweenが、Tween が最初からやり直すたびに、画像が短時間消えます。

これを適切に行う方法はありますか?

私のコードは今:

var myXML:XML;
var myLoader:URLLoader = new URLLoader();

var text:String;
var imagePath:String;

myLoader.load(new URLRequest("C:/Flash/paths.xml"));
myLoader.addEventListener(Event.COMPLETE, processXML);

function processXML(e:Event):void
{       
    myXML = new XML(e.target.data);

    text = myXML.text;
    imagePath = myXML.path;

    TextContainer.text = team1name;
    imageContainer.source = team2logoPath;

    trace("trace");    
}

テキストはちらつきませんが、画像はちらつきます。したがって、AS3 ではなく、XML ローダーが動作する理由は XML ローダーではないと思います。

毎回画像のソースを変更するだけでも、画像が短時間見えなくなります。

imageContainer.source = "C:/images/no_image.png";
4

2 に答える 2

1

あなたが得ているちらつきは、イメージをダウンロードするのにかかるロード時間、またはディスクからイメージをロードするために提供した 3sample です。これを回避したい場合は、何らかの方法で画像をプリロードする必要があります。
オープンソースのプリロードは簡単だと思います。私がすることは、画像コンテナーの配列を作成し、現在の要素をステージから削除してから、画像を変更したいときに配列に次の要素を追加することです。
この方法では、アイテムにソースを割り当て、表示されていなくてもダウンロードします。

于 2012-06-27T20:11:31.020 に答える
0

コンテンツのロード時に発生する UILoader の Event.COMPLETE イベントがあるかどうかを確認し、イベント ハンドラでトゥイーンを開始します。

于 2012-06-24T22:51:35.903 に答える