jamkit 엔진 동작
- catalog_main의 경우, 자동으로 jamkit 엔진에 view를 만들어 sbml, sbss를 올리라는 명령이 들어간다.
- 이때 엔진은 특정한 데이터를 만든다(데이터는 key, value가 쌍으로 이루어진다.)
- 데이터를 파일 이름 규칙에 따라 sbml을 찾고 결합시킨 후, 데이터를 뿌림! (jamkit 에선 파일 이름이 데이터와 연관이 있다.)
- sbml에서 '$'를 이용해 아래의 그림과 같이 (특정 or 전체) 데이터를 요청할 경우, 해당 sbml에서 요청하는 데이터를 찾은 후, sbml 내 요청 부문과 일치하는 데이터로 replace하여 sbml을 만든 후, 화면이 올라간다.
showcase object
- container object는 특정한 sbml, sbss를 영역 내 형태에 맞는 것을 찾아서 뿌려줄 수 있는 것이다. => 대표적인 것이 showcase
- jamkit에서 다루기가 가장 어려운 container object 이다.
- showcase의 경우 data가 없으면 사용할 수 없다. 즉 data가 있어야 사용할 수 있는 object 이다. => 화면에 데이터를 뿌리기 위해 만든 것!
cell의 갯수
- showcase에서 가장 중요한 것은 column-count, row-count 이다.
- 한 화면에서 몇 개의 cell을 보여줄지 결정하는 속성, 두 속성에 따라 무한 스크롤 배치 가능!
- column-count : Vertical (수직)
column-count = 1 이면 cell 하나가 수직으로 파파파팍!!!
- column-count = 2이면?? cell 2개가 가로로 나열되고 수직으로 파파파팍!!!
- row-count: horizontal (수평)
row-count=1 이면 수평으로 파파파팍!!! 쉽죠?
이제 column-count = 1, row-count = 4 이면 ?
cell의 크기는 조절 가능
cell-size="[width] [height]"
cell-size="0 200dp" // width가 0이면 object showcase의 width에 맞춰 자동 조정!!
cell간의 간격
cell-spacing=40dp
showcase에 데이터 넣는 방법
내부 local로 데이터를 만드는 법 => 네부 database인 sqlite의 특정한 데이터 집합을 showcase가 읽어 cell로 구성하는 방법
object showcase에서 name을 'showcase_xxx_cell.sbml' 파일을 연결하는 설정
object cell에서와 마찬가지로 파일 이름 규칙을 기반으로 sbml,sbss 파일을 연결(jamkit 에선 파일이름이 중요하다)
name에 설정된 값의 연결 동작(jamkit 엔진 동작)
// catalog_home.sbml
=object showcase: name=balance, width=0.9pw, height=0.9ph, cell-size="0 30dp", cell-spacing=10dp
// showcase_balance_cell.sbml
=begin cell
=object label: text="balance ${title}"
=end cell
- data 찾기
sqlite의 showcase 테이블에서 showcase가 balance인 데이터를 찾는다.
- 파일 찾기
파일 이름 규칙에 따라 showcase_balance_cell.sbml을 찾습니다.
- 파일 내 데이터 결합시켜 sbml 올리기
showcase_balance_cell.sbml 파일에서 지정한 데이터 요청 구문 (${YEAR})과 맞는 데이터를 매핑시켜 sbml을 만들고 이를 화면에 올립니다.
=> object showcase에 연결되는 sbml의 파일명 시작은 'showcase_'가 되어야 하며, showcase 내의 구현되는 cell이기에 파일명 끝은 '_cell"이 되어야 한다!!
참고 가이드
쇼케이스 오브젝트 Day 1 - 잼킷 개발자 가이드 (gitbook.io)
쇼케이스 오브젝트 Day 1 - 잼킷 개발자 가이드
row-count: horizontal 예시3) column-count=1, row-count=4 : 아래 그림의 <3>번 1개의 column에 4개의 row만큼만 뿌려지며, 데이터가 5개 이상일 경우, 우측으로 스크롤됩니다. 예시4) row-count=1: 아래 그림의 <4>번 col
thebookjam.gitbook.io
'jamkit > jamkit 이론' 카테고리의 다른 글
내비게이션 요소, 스크립트 연결 (0) | 2023.01.26 |
---|---|
액션과 이벤트, 스크립트, 화면 전환 (0) | 2023.01.09 |
오브젝트 연결, panes 오브젝트 (0) | 2023.01.06 |
jamkit 쇼케이스 오브젝트(3) (0) | 2023.01.06 |
jamkit 쇼케이스 오브젝트(2) (0) | 2023.01.06 |