2011-09-29 2 views
0

우리는 모바일 및 데스크톱 용으로 Flex 4.5.1 및 AIR 2.7에서 프로토 타입 및 데모 응용 프로그램을 제작합니다. 이러한 파일에는 많은 양의 전체 화면 .PNG 파일이 포함되는 경향이 있습니다. 최근 우리는 유연성과 멀티 스크린 재사용을 위해 코드를 분할하는 방법을 모색 해 왔습니다.많은 수의 이미지에 Flex/AIR 프로젝트 구조 설정?

사람들이 프로젝트 및 라이브러리를 분할하여 컴파일 시간을 최소화하고 이미지를 쉽게 교체 할 수 있도록 제안하려면 어떻게해야합니까?

답변

0

전략의 몇 가지 마음에 팝업 :

  • 는 CSS 파일을 사용하여, 인라인 [Embed] 제표에서 자산을 외면 화.
  • 별도의 SWF로 컴파일되도록 CSS를 구성하고 런타임에로드하십시오. 컴파일러가 정상적인 컴파일 과정에서 수행하는 PNG 인코딩 양을 최소화해야합니다.
  • 그래도 속도가 충분하지 않으면 (증분 컴파일러가 때때로 혼합되어 컴파일러 속도가 저하되는 임베디드 애셋을 다시 인코딩한다는 사실을 발견했습니다.) CSS 파일을 별도의 프로젝트로 옮깁니다.

이 옵션은 런타임에 이미지를로드하면 멀티 스크린 프로젝트에서 더 나은 유연성을 제공하므로 바람직합니다. 또한

는 :

  • CSS를 사용하는 몇 가지 이유에 대한 옵션이없는 경우, 별도의 SWC 프로젝트에 주요 프로젝트에서 [삽입]의 이동, 그 클래스에 포함.
  • 종속 프로젝트로 swc 추가
  • 클래스를 통해 에셋 참조.

예 :

// assets-project/src/Images.as 
public class Images { 
    [Embed('/assets/img/defaultAvatar.png')] 
    public static var defaultAvatar:Object; 
} 


// main-project/src/SomeView.mxml 
<s:BitmapImage source="{Images.defaultAvatar"} />