Flutter

ListView & GridView

ListView, ListView.builder, GridView, ScrollController, 아이템 재사용, lazy loading

25 면접 질문·
Mid-Level
1

Flutter에서 ListView()와 ListView.builder()의 주요 차이점은 무엇인가요?

답변

ListView()는 모든 자식을 즉시 생성하므로 긴 목록에서는 성능 문제를 일으킬 수 있습니다. ListView.builder()는 lazy loading을 사용하여 위젯이 화면에 보일 때만 생성합니다. 요소가 많은 목록의 경우, 화면 밖의 위젯을 재활용하여 메모리와 성능을 최적화하므로 ListView.builder()가 권장됩니다.

2

표시할 요소의 개수를 지정하기 위해 필수인 ListView.builder() 매개변수는 무엇인가요?

답변

itemCount 매개변수는 목록에 몇 개의 요소가 포함되어 있는지 ListView.builder()에 알려줍니다. 이 매개변수가 없으면 목록이 무한한 것으로 간주되어 itemBuilder가 무한정 호출됩니다. itemCount를 설정하면 프레임워크가 언제 요소 구축을 중단해야 하는지 알 수 있고 스크롤 표시기를 올바르게 표시할 수 있습니다.

3

ListView의 각 요소 사이에 구분선을 추가하려면 어떻게 해야 하나요?

답변

ListView.separated()는 요소 사이에 구분선을 표시하도록 특별히 설계되었습니다. itemBuilder 외에 separatorBuilder를 받아서 각 요소 사이에 사용자 정의 위젯(예: Divider)을 정의할 수 있습니다. 이 방식은 itemBuilder에서 구분선을 수동으로 추가하는 것보다 깔끔합니다.

4

Flutter에서 가로 방향 ListView를 만들려면 어떻게 해야 하나요?

5

ListView에서 shrinkWrap 매개변수의 역할은 무엇인가요?

+22 면접 질문

다음 면접을 위해 Flutter을 마스터하세요

모든 질문, flashcards, 기술 테스트, 코드 리뷰 연습, 면접 시뮬레이터에 접근하세요.

무료로 시작하기