'currentState'에 해당되는 글 1건

  1. 2010.10.28 Flex의 ViewStack과 States...!
Flex2010. 10. 28. 17:29
한화면안에서 여러 화면을 바꾸는 기술인 ViewStack과 States...!

ViewStack은 한화면안에 여러개의 화면을 준비 시켰다가 사용자가 원하는 화면을 보여준다.

States는 한화면안에서 화면을 사용자가 원하는 화면으로 항목등을 변경하여 보여준다.

음 말로 설명하려니 뭔가 좀 어설픈 감이 없지않아 있다...

<mx:ViewStack id="vs" width="100%">

<a:vs1 id="vs1" label="뷰스택1" />

<a:vs2 id="vs2" label="뷰스택2" />

<a:vs3 id="vs3" label="뷰스택3" />

</mx:ViewStack>


코드를 보면 각기 다른 페이지들을 작업하고 ViewStack안에 각자의 id와 함께 추가해주고...


vs.selectedChild = vs1;


이러한 코드를 화면이 바뀌고자하는 타이밍에 넣어주면 그화면으로 변경된다.


<s:states>

<s:State name="state1" />

<s:State name="state2" />

</s:states>


이번엔 states의 설명이다.


states안에 State들을 등록 시켜놓는다.


<mx:Button label="button1" includeIn="state1"/>

<mx:Button label="button2" includeIn="state2"/>


다음 코드를 보면 버튼안에 includeIn에 스테이트의 네임이 들어가있는것을 볼수 있다.


currentState = "state1";


역시 화면에 뭔가 변화를 주거나 할때의 이벤트에 이 코드를 넣어주면 된다.


스테이트의 선택을 state1으로 했으니 includeIn="state1"으로 한 button1만 보일것이다.


ViewStack과 States...


한화면 안에서 화면이 바뀌는건 비슷하지만...


전자는 화면 전체가 페이지 단위로 바귀는 것이고...후자는 한화면안에서 여러 구성요소들의 상태가 바뀌는 것이다.


여기서 원하는 화면으로 바뀌게 하는 명령어...


ViewStack은 ViewStack의ID.selectedChild = ViewStack에 등록한 페이지의 ID...


States는 currentState = "States에 등록해놓은 name"; 이것들을 기억해 두자.


아직 아는것이 없어서 설명을 요정도로 밖에 못하는게 아쉽다..-_-;;

Posted by Z700zZz