フェードインとフェードアウトについての質問のように非常にシンプル
-
19-09-2019 - |
質問
非常に簡単な質問。以下のコードをご覧ください。進行状況バーを備えた非常にシンプルなローダーです。進行状況バーは、「バー」と呼ばれるステージ上のシンボルです。
私が欲しいのは、ロードが終了したときにバーをフェードアウトし、ロードする画像をフェードすることです。私は多くの幸運を伴わずに多くのアプローチを試みました。
var loader: Loader = new Loader();
addChild(loader);
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
function completeHandler(evt:Event):void {
};
loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, progressHandler);
function progressHandler(evt:ProgressEvent):void {
var percent: int = Math.round(evt.bytesLoaded/ evt.bytesTotal * 100);
bar.width = percent;
};
var req:URLRequest = new URLRequest("encs1.jpg");
loader.load(req);
私にどんなポインターを与えてくれないか、事前に感謝します!
解決
これらのライブラリのいずれかを試してください。 Flashには、Tweening、fl.transitions.teenのためのライブラリが組み込まれていますが、これらほど良くありません。言及された3つすべてにも非常によく似たAPIがあります。
あなたの例では、あなたはこれを行います(Tweenerで):
function completeHandler(evt:Event):void {
Tweener.addTween(bar, {alpha:0, transtion:"easeOutQuad", time:.5});
addChild(loader.content);
loader.content.alpha = 0;
Tweener.addTween(loader.content, {alpha:1, transition:"easeInOutQunit", time:.5, delay:.5});
};
これにより、アルファ0のバーが.5秒かかり、ローダーのコンテンツ(画像)が0.5秒遅れた後、.5秒かかります。
他のヒント
私はあまりフラッシュ開発をしていませんが、私の同僚はシンプルなアニメーションのためにGtweenを愛しています。
http://www.gskinner.com/libraries/gtween/
デモをチェックすると、いくつかの高度なことができることがわかりますが、基本的なフェードインとアウトも非常に簡単であると思います。以下は、基本的なアニメーションの例です。VARSITEMTOTTOT、SECONDSTOANIMATE、およびALPHAを現在のプロパティをアニメーション化するプロパティに設定します。
new GTween(itemToTween, secondsToAnimate, { alpha: 1 }, { ease:Sine.easeOut } );
より多くの知識を持っている人が助けることができるまで、それが少しあなたを助けることを願っています。
所属していません StackOverflow