ModernListView 라이브러리 관련하여 www.fmxexpress.com 에 올라온 아티클이 있어 공유합니다.

“커뮤니티 사용자 rzaipov1990은 깃허브(Github)에 델파이 10 베를린에 있는 파이어몽키용 ListView 컴포넌트를 커스터마이징한 버전을 올려놓았습니다. ListView는 모든 모바일 앱에서 사용되는 핵심적인 컴포넌트입니다. 개발자는 늘 컴포넌트를 선택해야만 합니다. 컴포넌트는 원하는 대로 구성 변경이 가능하면서도 사용과 구현이 쉬워야 합니다. 공개된 최신 ListView 컴포넌트는 델파이 10 베를린 버전의 파이어몽키에서 사용 가능한 것으로 안드로이드, iOS, OSX, 윈도우용 앱 개발이 가능합니다.”

ModernListView 라이브러리의 기능들은 어떤 게 있을까요?

특징적인 기능 중 하나는 수평(horizontal)과 수직(vertical) 모드를 모두 지원한다는 점입니다.

목록에는 셀(항목들)을 수평으로 표시할 수 있습니다.

또는 항목을 세로로 표시할 수도 있죠. 애플리케이션의 룩앤필을 디자인할 때, 이 컴포넌트를 활용하면 모든 그래픽 요소들을 원하는 대로 커스터마이징할 수 있고, 다음과 같은 이벤트들도 설정할 수 있습니다: SetColorItemSelected, SetColorItemFill, SetColorBackground, SetColorItemSeparator, SetColorText, SetColorTextSelected, SetColorTextDetail, SetColorHeader, SetColorTextHeader 등 여러 속성들을 활용할 수 있습니다.

속성은 따로 설명할 필요는 없으니 여기서는 다루지 않겠습니다. AutoColumns와 ColumnWidth 속성을 사용해보세요. 그러면 이 컴포넌트는 목록을 채울 때 가장 알맞은 모양과 위치를 자동으로 계산해줍니다 (많은 항목을 처리할 때 굉장히 유용하죠).

표준 동작 이벤트와는 별개로, ListView에서 OnColumnClick를 활용할 수 있습니다. 스크롤 바 숨기기/보여주기 옵션도 있죠 (ListView.ShowScrollBar). 항목 구분을 위한 들여쓰기 설정도 가능하구요 (ListView.SeparatorLeftOffset, ListView.SeparatorRightOffset).

ModernListView 라이브러리의 비용은 얼마일까요?

이 컴포넌트는 무료입니다. 그리고 멋진 데모도 함께 제공되죠. 현재는 파이어몽키에서만 사용이 가능합니다. 멀티-디바이스 애플리케이션 개발을 계획하고 있다면 매우 유용한 컴포넌트입니다.


ModernListView 라이브러리를 사용해봅시다!

이 컴포넌트에 대해 좀 더 자세히 알아볼까요? 구성 요소, 설계, 기능을 살펴보겠습니다.


디자인 편집 효과, 컬러라이저 (Colorizer)

  • ListView1.SetColorItemSelected(TAlphaColorRec.Orangered);
  • ListView1.SetColorItemFill(TAlphaColorRec.Whitesmoke);
  • ListView1.SetColorItemFillAlt(TAlphaColorRec.Lightgrey);
  • ListView1.SetColorBackground(TAlphaColorRec.Whitesmoke);
  • ListView1.SetColorItemSeparator(TAlphaColorRec.Red);
  • ListView1.SetColorText(TAlphaColorRec.Darkmagenta);
  • ListView1.SetColorTextSelected(TAlphaColorRec.Blueviolet);
  • ListView1.SetColorTextDetail(TAlphaColorRec.Darksalmon);
  • ListView1.SetColorHeader(TAlphaColorRec.Crimson);
  • ListView1.SetColorTextHeader(TAlphaColorRec.Whitesmoke);
  • ListView1.SetColorTextHeaderShadow(TAlphaColorRec.grey);
  • ListView1.SetColorPullRefresh(TAlphaColorRec.Lime);
  • ListView1.SetColorPullRefreshIndicator(TAlphaColorRec.Limegreen);
  • ListView1.SetColorStretchGlow(TAlphaColorRec.Limegreen);

항목들을 원하는 색상으로 설정하기

수평 모드 (Horizontal Mode)

  • ListView1.Horizontal := true;

컬럼 모드 (Volumns Mode) – 수직 구조만 가능 (only vertical)

  • ListView1.ColumnWidth := 160;
  • ListView1.AutoColumns := true;

이벤트 설정

AutoColumn 모드를 설정할 때 이벤트

목록 종료 시 호출됩니다.


메소드들

  • Style for ListView Columns Mode
  • ListView1.ShowScrollBar – hide/show scrollbar
  • ListView1.ItemsClearTrue – correct delete items
  • ListView1.OffsetTop – indent of the first element
  • ListView1.OffsetBottom – indent of the last element
  • ListView1.getFirstVisibleItemIndex – first visible ItemIndex
  • ListView1.getVisibleCount – amount of visible items
  • ListView1.getLastVisibleItemindex – first visible ItemIndex + amount of visible items
  • ListView1.SeparatorLeftOffset – indent for separator line
  • ListView1.SeparatorRightOffset – indent for separator line
  • ListView1.EnableTouchAnimation – enable/disable touch animation

 

이 외에도 활용 가능한 기능들이 정말 많습니다. 전체 내용은 깃허브(Github)에서 패키지를 다운로드 받아서 확인할 수 있습니다: https://github.com/rzaripov1990/ModernListView

Note: 이 글에 소개된 스크린샷과 일부 텍스트들은 위의 깃허브에서 가져온 정보들입니다.

번호 제목 글쓴이 날짜 조회 수
공지 [DelphiCon 요약] 코드사이트 로깅 실전 활용 기법 (Real-world CodeSite Logging Techniques) 관리자 2021.01.19 15469
공지 [UX Summit 요약] 오른쪽 클릭은 옳다 (Right Click is Right) 관리자 2020.11.16 13974
공지 [10.4 시드니] What's NEW! 신기능 자세히 보기 관리자 2020.05.27 16505
공지 RAD스튜디오(델파이,C++빌더) - 고객 사례 목록 관리자 2018.10.23 22062
공지 [데브기어 컨설팅] 모바일 앱 & 업그레이드 마이그레이션 [1] 관리자 2017.02.06 23276
공지 [전체 목록] 이 달의 기술자료 & 기술레터 관리자 2017.02.06 18933
공지 RAD스튜디오(델파이, C++빌더) - 시작하기 [1] 관리자 2015.06.30 39266
공지 RAD스튜디오(델파이,C++빌더) - 모바일 앱 개발 사례 (2020년 11월 업데이트 됨) 험프리 2014.01.16 174729
694 XE에서 MySQL 연결오류 및 한글문제 해결 [3] c2design 2013.08.28 10732
693 [환경설정] 아마존 EC2 이용해 리눅스 서버 환경 구축하기 file 험프리 2017.04.20 10642
692 OAuth 2.0 연동 - 카카오 API(카카오톡 프로필) [9] 험프리 2018.12.26 10037
691 이 달의 기술자료 - 2014년 8월 file 험프리 2014.07.04 9945
690 [따라하기] 도서대여 프로그램 만들기(VCL, DB프로그래밍) [2] file 험프리 2017.01.19 9872
689 이 달의 기술자료 - 2014년 3월 험프리 2014.03.05 9570
688 RAD Studio 빌드번호 확인하는 방법법 [1] file 험프리 2016.01.08 9489
687 RadPHP XE2 에서 한글 문제 [2] file 박병일 2012.03.08 9118
686 BOGO 프로모션 툴 다운로드 받는 방법 안내(2015.6.1~2015.6.30 구매고객) 관리자 2014.06.16 8776
685 RadPHP 한글문제 관리자 2012.04.13 8196
684 [REST API][실습] REST API 클라이언트 개발하기(REST Client 이용) [2] 험프리 2017.05.23 7103
683 [마이그레이션] 유니코드 적용시 검토할 사항들 file 험프리 2014.08.21 7024
682 HTML5 Builder로 시작하는 Hello World 모바일 클라이언트 앱 생성하기 (한글 번역) 관리자 2012.09.20 6970
681 XE5 안드로이드 단말기 연결시 확인사항 file c2design 2013.09.23 6879
680 [환경설정] 아마존 EC2 이용해 윈도우 서버 환경 구축하기 [1] file 험프리 2017.04.13 6215
679 [10.2 도쿄] 델파이/C++빌더 리눅스 개발환경 설정하기 [1] file 험프리 2017.02.21 6129
678 David I의 31 XE3 퀵 비디오 - HTML5 빌더로 클라이언트 모바일 앱 개발하기 관리자 2012.10.15 5901
677 RAD스튜디오 개발환경(IDE) 사용법: 파이어몽키 코스북 3장 file 관리자 2014.07.09 5832
676 [따라하기] 건강데이터 수집 및 기록 시스템 #1 - BLE 기반 스마트 체중계에서 실시간 데이터 받기 [1] Humphery 2015.10.02 5803
675 이 달의 기술자료 - 2015년 04월 험프리 2015.03.26 5677