guide 컨트롤 Options

리스트 컨트롤의 구성 영역 및 그룹핑 등의 컨트롤 기능들에 대한 설정 정보를 전체적으로 관리한다. 모바일 UI 컨트롤 특성 상, 사용자가 portrait와 landscape 모드 변경을 할 수 있으므로 컨트롤 설정을 두 상태에 따라 별도로 지정할 수 있게 했다. 컨트롤의 options는 공통 기본 설정을 하고, landscape는 가로 모드일 때의 설정, portrait는 세로 모드일 때의 설정을 따로 할 수 있다. 현재 상태의 설정은 current 속성을 통해 설정한다.
주로 컨트롤 생성 시점에 setConfig로 컨트롤 속성들과 options들을 한꺼번에 설정한다.

const config = {
    props: {
    },
    options: {
        header: {
        },
        footer: {
        },
        ...
    }
};
const list = RealTouch.createListControl(document, 'realtouch');
list.setConfig(config);
list.data = data;

물론, 이벤트 콜백 등 필요한 시점에 api를 통해 개별적으로 설정 가능하다.

list.header.clickAction = RtSectionAction.SEARCH;

Control Properties

가로/세로(landscape/portrait) 구분이 필요 없는 컨트롤의 고유 속성들은 options와 포함되지 않고 컨트롤 객체의 속성으로 접근한다. 몇몇 속성들은 아래와 같다. 자세한 목록은 RtListControl 페이지를 참조한다.

property type default description
data RtDataSource 데이터소스
largeSize number 700 'large' 템플릿을 사용해야 하는 기준 화면 너비
textFormat string 기본 text to string format
boolFormat string 기본 boolean to string format
numberFormat string 기본 number to string format
topRow number -1 현재 표시되는 시작(최상단) 데이터행 index
page number NaN 페이징 상태일 때, 현재 페이지 인덱스
rowClickAction RtRowClickAction 데이터행을 tap했을 때 실행되는 action
rowDeleteAnimation boolean false 데이터행 삭제를 애니메이션으로 표현할 것인 지 여부

Options

가로/세로(landscape/portrait) 별도로 지정할 수 있는 컨트롤 속성들은 세 가지 속성 집합 객체에 설정한다.

  • options - 속성들의 기본 값을 설정한다. landscape나 portrait에 명시적으로 설정하지 않은 속성은 이 객체에 지정한 값으로 적용된다.
  • portrait - 세로 모드일 때 속성 값을 설정한다.
  • landscape - 가로 모드일 때 속성 값을 설정한다.

current는 컨트롤을 구성할 때 portrait, landscape 중 현재 적용 중인 설정 객체이다.

이 속성 집합에는 컨트롤 구성 요소들의 설정 객체들이 모두 포함되어 있다. 몇몇 속성들은 아래와 같다. 자세한 목록은 RtListOptions 페이지를 참조한다.

property type default description
orientation RtOrientation VERTICAL 데이터행 배치 방향
rowCommands string[] 데이터행 command box에 표시되는 실행 명령 들
header RtListHeader 리스트 헤더 설정 모델
footer RtListFooter [리스트 푸터] 설정 모델
rowBar RtRowBar Row Bar 설정 모델
editBar RtEditBar Edit Bar 설정 모델
scrollIndicator RtScrollIndicator Scroll Indicator 설정 모델
scrollBar RtScrollBar Scroll Bar 설정 모델
pageNavigator RtPageNavigator Page Navigator 설정 모델
commandBox RtCommandBox Command Box 설정 모델
searchBar RtSearchBar Search Bar 설정 모델
searchResultBar RtSearchResultBar Search Result Bar 설정 모델
fieldBar RtFieldBar Field Bar 설정 모델
formPanel RtFormPanel Form Panel 설정 모델
buttonPanel RtButtonPanel Button Panel 설정 모델
searchPanel RtSearchPanel Search Panel 설정 모델
filterPanel RtFilterPanel Filter Panel 설정 모델

주의 사항

  1. visible 속성을 갖는 객체 속성의 경우, setConfigsetOptions에서 json 객체 대신 boolean 값을 지정하면 visible 속성을 설정하는 것으로 간주한다. 아래 두 설정은 동일하게 기능한다.
list.setOptions({
    searchBar: true
})
list.setOptions({
    searchBar: {
        visible: true
    }
})

See Also

RtListControl
RtListOptions
컨트롤 구성 요소들
템플릿
레이아웃