scaleform.minarto.com

CLIK 3 - DropdownMenu 0 본문

CLIK

CLIK 3 - DropdownMenu 0

미나토 2012. 2. 14. 12:25


이번에는 DropdownMenu 입니다. 지금 순서는 자주 쓸만한 놈들로 하고 있습니다.

게임에 자주 쓰인다는게 아니고요.
예를 들어 라벨이라면 굳이 콤포넌트를 써야할까요? 뭐, 상황에 따라 쓰일 수도 있겠지만 대부분 그냥 날 TextField 로 대체 가능하다고 생각합니다.

제가 포스팅 하는 건 쓰이는 것들 중 콤포넌트를 써야 할 것들 위주라는거죠...


그리고 추가할게 있는데, CLIK 의 set / get 함수 기술 방식에 대해서입니다. 보통 플래시에서 set / get 함수를 사용하면 다음과 같이 하죠?

private var _visible:Boolean;
public function set visible():void
public function get visible():Boolean




그런데 CLIK 에서는 다음과 같이 private 접근제한자가 protected 로 잡혀있습니다.

protected var _visible:Boolean;
public function set visible():void
public function get visible():Boolean

 

확장 클래스를 제작할 때, 느린 get 함수콜을 안하고(보통 세배 정도 느리다고 알려져 있습니다) 빠른 접근이 가능하다는 얘기죠.



다시 본론으로 돌아가죠

scaleform.clik.controls.DropdownMenuscaleform.clik.controls.Button 을 상속 받았다는걸 기억해주시기 바랍니다

1.  autoSize:String = TextFieldAutoSize.NONE

버튼과 같습니다. 단, 드롭다운 메뉴가 펼쳐졌을 시가 아닌 그냥 화면에 놓여진 드롭다운 메뉴의 상태의 리사이즈를 말합니다


2. dropdown:Object = "CLIKScrollingList"

드롭다운 메뉴를 클릭했을 때, 펼쳐질 리스트로 쓰일 클래스명입니다. 써놓고 보니 리스트를 먼저 포스팅할 걸 그랬네요...
scaleform.clik.controls.ScrollingList 녀석을 상속받는군요.


3. enabled:Boolean = true (flex)

버튼과 같습니다. Button 편을 참고하세요


4. focusable:Boolean = true (flex)

버튼과 같습니다. Button 편을 참고하세요


5. itemRenderer:Object = "CLIKListItemRenderer" (flex)

dropdown 으로 생성된 리스트에 아이템 렌더러로 쓰일 클래스명입니다


6. menuDirection:String = "down"

메뉴가 열릴 방향입니다. down, up 두가지입니다


7. menuMargin:Number = 1

드롭다운 메뉴의 크기를 기준으로 리스트의 여백입니다


8. menuOffset:Padding = new Padding(0, 0, 0, 0) : top / bottom / left / right 

드롭다운 메뉴의 위치를 기준으로 펼쳐진 리스트와의 간격입니다. 내부적으로는 scaleform.clik.utils.Padding 클래스로 돌아갑니다.


9. menuPadding:Padding = new Padding(0, 0, 0, 0) : top / bottom / left / right

리스트와 아이템간의 여백값입니다 


10. menuRowCount:Number = 5

리스트가 펼쳐졌을 때, 한번에 보여질 아이템의 갯수입니다


11. menuWidth:Number = -1

펼쳐질 리스트의 넓이입니다. - 1 로 되어있으면,
드롭다운 메뉴 넓이 + menuOffset.left +  menuOffset.right 의 크기로 결정됩니다


12. scrollBar:Object

리스트의 스크롤바로 쓰일 클래스명입니다. 지정되어 있지 않으면 dropdown 클래스에 지정된 스크롤로 지정됩니다


13. thumbOffset : top / bottom (코드 안에는 thumbOffsetTop:Number, thumbOffsetBottom:Number 속성으로 들어있습니다)

상 / 하 스크롤 버튼과 스크롤과의 간격값인데, 현재 리스트의 크기가 변경되어버리는 버그가 있네요... 지금으로선 안 건드리는게 상책입니다


14. visible:Boolean = true

버튼과 같습니다. Button 편을 참고하세요


이녀석은 버그도 좀 많은거 같고, 현재로서는 직접구현하던지 고쳐 쓰던지 해야겠네요...