Notice
Recent Posts
Recent Comments
Link
WinGyu_coder
Flutter, 플러터 ListView, separated 와 builder 차이점 본문
ListView.separated
와 ListView.builder
는 Flutter에서 리스트를 구성할 때 사용하는 두 가지 주요 위젯입니다. 이들의 주요 차이점은 다음과 같습니다:
아이템 분리자 (Separator):
ListView.separated
: 이 위젯은 리스트의 각 아이템 사이에 분리자를 넣는 기능을 제공합니다. 이 분리자는separatorBuilder
함수를 통해 정의되며, 각 아이템 사이에 원하는 위젯을 삽입할 수 있습니다. 예를 들어, 리스트 아이템 사이에 공간을 두거나 구분선을 추가하는 등의 작업이 가능합니다.ListView.builder
: 이 위젯은 분리자를 지원하지 않습니다. 단순히 연속적인 아이템들을 리스트 형태로 표시할 수 있지만, 각 아이템 사이에 추가적인 공간이나 구분선을 자동으로 넣는 기능은 없습니다.
사용 사례:
ListView.separated
는 아이템 사이에 시각적 구분이 필요한 경우에 적합합니다. 예를 들어, 각 리스트 아이템을 시각적으로 구분하기 위해 선이나 여백을 넣고 싶을 때 유용합니다.ListView.builder
는 연속된 아이템들을 빠르고 효율적으로 표시할 때 사용됩니다. 분리자가 필요하지 않은 단순 목록을 표시하는 경우에 적합합니다.
성능:
- 두 위젯 모두 "lazy loading" 방식을 사용합니다. 즉, 화면에 보이는 아이템들만 메모리에 로드하고 렌더링합니다. 이는 대규모 목록을 표시할 때 메모리 사용을 최적화하는 데 도움이 됩니다.
결론적으로, 두 위젯은 목적에 따라 선택하여 사용할 수 있으며, 특히 리스트 아이템 사이에 특별한 구분이 필요한 경우 ListView.separated
를 사용하는 것이 좋습니다. 반면, 단순한 목록을 표시하는 경우 ListView.builder
가 더 적합할 수 있습니다.
'Flutter 플러터, Dart 다트' 카테고리의 다른 글
Flutter 플러터, dispose 사용법 알아보기 (0) | 2024.01.07 |
---|---|
Flutter, Dart 플러터 함수 정의, void 사용과 사용 안하는 경우 비교 (0) | 2023.11.20 |
Flutter 플러터 화살표 함수 () =>, 블록 바디 함수 () {} 차이점 (0) | 2023.11.11 |
Flutter, 플러터로 직렬통신하기, RS-485, serial_communication (0) | 2023.11.08 |
Flutter 플러터: mainAxisAlignment, crossAxisAlignment (가로,세로 정렬) (2) (0) | 2023.10.22 |