1. mxml문서 안에 CSS 정의하기

<mx:Style>
    .isMyStyle{
        font-size:10;
    }
</mx:Style>

…

<mx:Button  label="push" styleName="isMyStyle" x="62" y="76"/> 

2. mxml문서 밖에 CSS정의하기

<!—css파일이 있는 해당 경로 지정-->

<mx:Style source="flex_skins.css"/>

…

<mx:Button  label="push" styleName="myFontStyle" x="62" y="76"/> 

3. actionscript로 CSS정의하기

 

 

 

4. 그래픽(이미지) 스킨 적용하기

 

Inline:

<mx:Button upSkin=”@Embed(‘assets/myGraphicButton.gif ’)”/>

 

 

CSS:

<mx:Style>

   Button{
        overSkin:Embed(”assets/myGraphicButton.gif ”);
    }
</mx:Style>

 

Action Script:

<mx:Script>
    <![CDATA[
        [Embed("assets/myGraphicButton.gif")]
        var dSkin:Class;


        private function init():void
        {
            myButton.setStyle("downSkin",dSkin);
        }
    ]]>
</mx:Script>

 

cf. 버튼의 분리된 스킨 관리(upSkin, overSkin, downSkin, disableSkin)

 

5. CSS를 swf로 변환하여 사용하기

 

기존의 css를 내부나 외부에서 가지고 접근하게 되면 컴파일 될 경우 어플리케이션 안으로 포함.

따라서 보다 경량적이고 유기적인 방법 모색을 시도한다.

 

런타임 CSS 적용(swf, swc)

 

merits

- 재 컴파일과 재 배포가 필요 없기 때문에 간단히 배포(빠른 유지 보수)

- 하나의 어플리케이션에 다수의 스킨을 다방면으로 디플로이 시킬 수 있기 때문에 커스터마이징이 유리

 

CSS파일을 SWF로 만드는 방법은 간단하다.

물론 Flex Builder가 알아서 해준다.(mxmlc를 이용해서 컴파일 가능)

 

Package Explore 창에서 해당 css를 선택하고 마우스 우 클릭>compile css to swf를 실행

out-put 폴더(default bin-debug)에 css, swf파일이 추가가 된다.

 

단 한 줄의 코드로 사용할 수도 버릴 수도 있다.

StyleManager.loadStyleDeclarations(“myStyle.swf”);

StyleManager.unloadStyleDeclarations(“myStyle.swf”);

 

6. swf, swc import하여 component스킨 변경하기

 

flex builder에는 놀라운 위자드가 있는데 그것이 flash나 photoshop,illustrator에서 작업한 내용을 가지고 스킨을 변경할 수 있다고 한다. photoshop이나 illustrator는 designer에게 해보라 하고 우린 flash로 한번 skin을 변경해 보겠다.

flex componet skin을 편집할 수 있는 extension을 깔아 준다.( http://www.adobe.com/products/flex/flexdownloads/ )

 

flex_skin template가 만들어지고 깔리는 위치는 C:\Documents and Settings\…\Local Settings\Application Data\Adobe\Flash CS4\en\Configuration\Templates\Flex_Skins에 깔릴 것이다.(윈도우 환경)

 

그리고 cs3,4를 실행하게 되면 start page에 template이 생길 것이다.

혹 생기지 않는 다면 program files폴더에 있는 Flash CS4의 위와 같은 경로로 다시 한번 Flex_Skins를 복사해서 깔아 봐주고 CS3,4를  재 시작하게 되면 생성 될 것이다.

Flex_Skin을 선택하고 flex_skins를 선택하면 전체 컴포넌트 스킨들이 뜰 것이다.


각각 필요한 편집을 마치고 publish setting을 들어가서 Export to SWC를 체크해 주고 publish를 해주게 되면 swc파일이 해당 폴더에 생성 된다.

 

해당 swc를 flex 빌더로 돌아와, 메뉴에서 File>Import를 하게 되면 mx skin artwork(skin artwork)를 선택 기존의 swf나 swc를 선택하고 import를 하게 되면 해당 컴포넌트들의 스킨이 변경 될 것이다.

 

 

7. theme 적용하기

 

마지막으로 Flex builder를 깔게 되면 기본적으로 깔려있는 Theme을 변경해 보자.

Package Explore에서 마우스 오른쪽 클릭 후 properties>Flex Theme 메뉴에 들어가게 되면 7가지(default 포함) Theme이 있는데 하나를 선택하고 OK를 하게 되면 해당 Skin으로 전체 적용이 것이다.

default가 아닌 theme을 적용하게 되면 theme관련된 swf, html파일이 자동 생성(theme관련된 정보는 “.actionScriptProperties”안에 명시됨)되는데 호기심이 나는 바람에 swf를 decompile해 보았다.

 

오~ 수많은 as파일들이 나타나는 군요.

거기엔 actionscript로 컴포넌트들의 스킨을 제어하고 있다.

 

theme를 추가 하고자 한다면 우선 CSS, SWC로 정의 된 파일을 가지고 import 해서 사용 가능하다.

 

추가적으로 CSS 정의 내릴 웹 툴을 소개한다.(CSS를 잘 안다면 직접 작성하는 천재들은 패스~)

Flex Style Explore(v3.0 beta)

http://examples.adobe.com/flex3/consulting/styleexplorer/Flex3StyleExplorer.html#

본 사이트에서 각 컴포넌트들의 설정 값들을 변경하고 CSS창에 생성되는 소스를 가져다 쓰면 간편하게 이용할 수 있다.

 

또한 CSS를 Flex builder로 Design모드에서 preview를 해가면서 변경도 가능하다.

 

보너스 하나 더!!!

 

각종 컴포넌트 커스트마이징 다운로드

http://www.adobe.com/cfusion/exchange/index.cfm?s=5&from=1&o=desc&cat=187&l=-1&event=productHome&exc=15

 

theme관련 다운로드

http://scalenine.com/themes/

 

 

정말 skin과 CSS 적용하는 방법과 수칙들이 너무나 다양해서 다 설명하기란 역부족인 것 같습니다.

끝 맺음에 앞서 중요한 것은 컴파일 시 적용시키는 CSS보단 swf로 런타임 시 적용 시키는 방법이 더 효율적이고 이상적인 것이라 기억해 주면서…

 

차후에 부족한 정보는 추가 업데이트 하도록 하겠습니다.

Share/Bookmark

태그 : css,flash,flex,swc
이전 1 ... 13 14 15 16 17 18 19 20 21 ... 70 다음