
flex 4.6 Mobile 에서 List 를 이용하면 가로, 세로 정렬 이 가능 합니다.
그런데 모바일 기기는 해상도가 너무 달라서 화면에 맞추기가 힘들죠…
해서 TileList 를 사용해서 해상도에 따라 정렬이 자동으로 맞추려고 했습니다.
사실 TileList 는 html 에서 가로,세로 100% 라고 생각 하시면 될 거 같은데요.
예를 들어 List 가로, 세로 100px 의 이미지를 불러 온다고 할때
|
이미지 |
이미지 |
이미지 |
이미지 |
|
<s:layout> |
또는
|
이미지 |
|
이미지 |
|
이미지 |
|
이미지 |
|
<s:layout> |
형태로 사용이 됩니다.
그런데 저는 이런 방식이 아니라

|
이미지 |
이미지 |
이미지 |
|
이미지 |
이미지 |
이미지 |
| 이미지 |
이미지 |
이미지 |
위와 같은 형식으로 정렬을 시도 했습니다.
해서
TileList 를 사용하려 했는데요 이 코드가 mx 코드를 사용해야 해서
어도비의 도움말을 참고해 코드를 작성 했습니다.
어도비 도움말 코드
|
<?xml version="1.0"?>
<!-- dpcontrols/TileListDataProvider.mxml -->
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
initialize="initData();" >
<fx:Script>
<!
[CDATA[
import mx.controls.Button;
import mx.collections.*;
private var listArray:Array=[
{label: "item0", data: 0},{label: "item1", data: 1},
{label: "item2", data: 2},{label: "item3", data: 3},
{label: "item4", data: 4},{label: "item5", data: 5},
{label: "item6", data: 6},{label: "item7", data: 7},
{label: "item8", data: 8}];
[Bindable]
public var TileListdp:ArrayList;
private function initData():void {
TileListdp = new ArrayList(listArray);
}
]]>
|
위 코드는 어도비 도움말 코드 입니다.
그런데 위와 같이 작성 했는데요 오류가 나더군요 헐..
그래서 한참을 생각하다 layout 을 변경하면 되지 않을가 하는 생각했는데요 역쉬 정답이였습니다.
<s:T 까지 입력하니 코드 힌트가 떡 하니 나오는게 아닙니까 ㅎㅎㅎ
<s:layout>
<s:TileLayout columnWidth="130" horizontalAlign="center" columnAlign="justifyUsingWidth" orientation="rows"/>
</s:layout>
위 코드가 바로 Flex 4.6 에서 TileList 를 사용하는 코드 입니다...^^





