2009-10-05 2 views
1

이것에 대한 여러 예제를 읽었지만 어떻게 작동하는지 알 수 없습니다. 프리 로더는 as3에서 어떻게 작동합니까?

  • 어떻게 클래스는 사전 로더 알고 있습니까?
  • 플래시는 클래스를로드하지만 다른 클래스는로드하지 않는 것을 어떻게 알 수 있습니까?
  • 프리 로더에서 얼마를 할 수 있습니까? : -p

나는 FlashDevelop atm을 사용하고 있으며 프로젝트를 생성하고있다. 그러나 모든 예제에서 나는 그것이 어떻게 작동하는지 설명하지 않았다.

답변

2

플래시 타임 라인에 대해 잘 알고 계십니까?

기본적으로 SWF에는 하나의 프레임이 있습니다. 이 프레임에는 Preloader.as 클래스가 포함되어 있습니다. 컴파일 타임에 FD는 두 번째 프레임을 만듭니다.이 프레임에는 전체 SWF가 다운로드 된 후에 실행하려는 클래스 인 Main 클래스가 들어 있습니다. Preloader.as에는 모든 프레임이 완전히 다운로드 될 때까지 대기하는 코드가 들어 있으며 Main 클래스가 인스턴스화됩니다. http://www.flashdevelop.org/community/viewtopic.php?f=9&t=5398에서

자세한 내용 : 당신이 "프리 로더와 AS3 프로젝트"를 만들 때

, FD는 사용자가 제어해야 할 몇 가지 중요한 사항을 구성 :이 Preloader.as에서

  1. , 메인 클래스를 해결하기위한 호출입니다 : getDefinitionByName ("{qualified main class name}")

  2. in 프로젝트 속성 이거, 컴파일러 옵션> 추가 컴파일러 인수 [...] 이 있어야한다 : 이

플래시 FD가 그것을두고 있기 때문에 처음 Preloader.as을 실행하는 데 알고 {자격을 갖춘 메인 클래스 이름을} 시작 - 프레임 첫 번째 프레임에서는 Preloader 클래스가 "항상 컴파일"(클래스를 마우스 오른쪽 단추로 클릭하고 "항상 컴파일"을 선택하여이 옵션을 직접 설정할 수 있기 때문에) FD가이 작업을 수행합니다.

프리 로더에서 원하는대로 할 수 있지만 프리 로더에 필요한 모든 것이 다운로드 될 때까지 코드를 실행하지 않습니다.따라서 3MB 이미지 파일과 진행 막대가있는 프리 로더를 만들면 전체 이미지가 다운로드 될 때까지 진행 막대가 아무 것도하지 않습니다!

+0

예 - "항상 컴파일하다"는 약간의 오해의 소지가 있습니다. - 항상 하나의 파일 만 선택하여 컴파일 할 수 있습니다 :-p –

+0

순전히 절차상의 관점에서 왔으며 실제 플래시가없는 경우에 대해 들었습니다. 타임 라인은 사용하지 않았지만 결코 사용하지 않았다 :-p –

+0

이제 FD가 장면 뒤에서 마술을하고 있다는 것을 알았으므로 조금 더 조사 할 수있다. 나는 as3가 모든 것을 제어 할 수있는 방법을 좋아하지만,이 "마술"이 어디서 왔는지, 구성 가능한지 여부에 관해서는 조금 혼란 스러웠다. –

1

AS3에서는 외부 기본 템플릿 (SWF 임) 만 사용하여 내 기본 SWF에로드합니다. 프리 로더를 실제로 미리로드 할 수 없으므로 프리 로더 swf가 작아야합니다. SWF에로드하고 크기 정보 (크기 등)를 얻는 데 사용하는 Loader라는 클래스가 있습니다. 이 정보를 수신하기 위해 이벤트를 수신 한 다음 진행 막대를 렌더링하는 데 사용할 수 있습니다.

그래서 프리 로더는 작업을 수행하는 또 다른 클래스를 좋아하는 것이 아니므로 URL을 전달하여 알려줍니다 로드 할 SWF 문자열을 지정합니다.

다시 말하지만 프리 로더는 클래스이므로 원하는 모든 작업을 수행 할 수 있지만 SWF 파일 크기를 줄이는 것이 가장 좋습니다.

정말 멋진 튜토리얼은 http://www.gotoandlearn.com/play?id=85을 확인하십시오. Lee는 다운로드 할 파일에 대한 링크도 제공합니다.

+0

그래, 어떻게이 방법이 작동하는지 이해한다. FD/플래시가 하나의 swf인데, 내가 짐작할 수없는 예제에서 :-p –

+0

아. 개발자가 자동으로 프리 로더 SWF 또는 무언가를 생성합니까? FDT를 사용하므로 Flash Develop에 익숙하지 않습니다. 쿨하지만. – Allan

관련 문제