2010-06-01 3 views
4

프리 로더를 설치하는 방법을 알고 있고 그 작업을했습니다. 그러나 플래시 애플리케이션을 디버그하고 다운로드를 시뮬레이트 할 때 몇 초가 지날 때까지 빈 배경이 있습니다.플래시 파일의 다운로드 진행 상태를 표시 할 수 있습니까?

swf 파일을 "다운로드 중"이라는 것을 알고 있으며, 진행 표시 줄을 표시 할 수 있는지 궁금합니다. 또는 가능한 한 작고 swf 파일을 필요로하고 모든 것을 미리로드하고 모두 필요합니다. 저작물을 별도의 파일로 가져 오는 중입니까?

ProgressEvent.PROGRESS과 함께 뭔가를 발견했지만 플래시 파일 다운로드가 완료된 후에 만로드됩니다.

+0

문제는 프리 로더를 얼마나 작게 만들 수 있습니까? 왜 "몇 초가 지날 때까지 빈 배경이 있습니다"라고 큰 문제가 있습니까? – Earlz

+0

내가 궁금해하는 점은 모든 것을 swf에 포함 시켜서 그냥 다운로드하거나 초기 다운로드 후에 필요한 모든 것을 미리로드하는 작은 swf가 있어야한다는 것입니다. –

+1

첫 번째 프레임에 충분한 SWF가 다운로드 되 자마자 Flash Player가 시작될 것이라고 생각했습니다. –

답변

2

내부적으로 SWF 내부의 항목은 프레임으로 분리되며, Flash Player가 SWF를로드하면로드 된 프레임의 내용을 표시 및 실행합니다. 아직 끝났다. 프리 로더가 SWF의 초기 프레임에 더 일찍 저장되어 있고 나중에 무거운 내용이 저장되면 프리 로더를 보여주는 것이 매우 가능합니다.

아마도 당신이 당면한 문제는 합리적으로 평범한 방식으로 내용을 작성하면 모든 클래스 객체가 첫 번째 프레임에 저장된다는 것입니다. 이를 변경하는 가장 쉬운 방법은 FLA 파일의 [제작 설정]> [Flash]> [AS3 설정]의 [프레임에 클래스 내보내기 :] 대화 상자가 있습니다. 이 설정을 1에서 5로 변경하면 루트 타임 라인의 첫 번째 두 프레임에 간단한 프리 로더 (프레임 스크립트 사용)를 넣고 클래스를 사용하는 모든 것이 5 번째 프레임 이후에 배치 될 수 있습니다.

프리 로더에서 프레임 스크립트를 사용하지 않으려는 경우 클래스 기반 프리 로더를 사용할 수도 있지만 클래스에 링크 된 각 객체의 속성 대화 상자로 이동해야합니다. "프레임 1로 내보내기"옵션을 선택한 다음 타임 라인 계층 구조의 어딘가에 배치하여 내보낼 지 확인하십시오. 그러면 조금 더 고통 스러울 것입니다. 당연히 프리 로더를 나타내는 클래스 객체는 여전히 첫 번째 프레임으로 내보낼 필요가 있습니다.

또는 전체 문제를 해결할 수 있으며 프리 로더를 별도의 쉘 SWF로 만들어서 간단히로드 한 다음 실제 내용을로드하고 로더 표시 줄을 표시 할 수 있습니다. 프리 로더를 다시 사용하려면이 옵션을 선택하는 것이 좋습니다.

+0

고맙습니다. 훌륭한 대답입니다. –

관련 문제