페이드 인과 페이드 아웃에 대한 질문처럼 매우 간단합니다
-
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.Transition을위한 내장 라이브러리가 있습니다. 언급 된 세 가지 모두 매우 유사한 API가 있습니다.
예를 들어, 당신은 이것을 (트위너와 함께) 할 것입니다.
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으로 2 초 동안, 로더의 내용 (이미지)을 알파 1에서 0.5 초 후에 .5 초 지연 한 후 .5 초가 걸리면 막대가 사라지고 즉시 이미지가 사라집니다.
다른 팁
나는 실제로 플래시 개발을 많이하지 않지만 내 동료는 간단한 애니메이션을 위해 GTWeen을 좋아합니다.
http://www.gskinner.com/libraries/gtween/
데모를 확인하면 고급 작업을 수행 할 수 있지만 기본적인 페이딩도 안팎으로 매우 간단하다고 생각합니다. 아래는 기본 애니메이션의 예입니다. VARS ItemTotween, SecondStoanimate 및 Change Alpha를 현재 속성에 애니메이션하려는 속성으로 설정하십시오.
new GTween(itemToTween, secondsToAnimate, { alpha: 1 }, { ease:Sine.easeOut } );
더 많은 지식을 가진 사람이 도움이 될 때까지 조금 도움이되기를 바랍니다.
제휴하지 않습니다 StackOverflow