[Flutter] flutter_airbnb

만들면서 배우는 플러터 앱 프로그래밍
최재원's avatar
Jul 30, 2025
[Flutter] flutter_airbnb
Contents
1. 위젯

프로젝트 코드

1. 위젯

Wrap

  • 공간이 부족할 경우 자동으로 줄바꿈하며 자식 위젯들을 나열하는 위젯
  • RowColumn과 달리 줄 수가 유동적이며, 정해진 너비 안에서 여러 줄로 배치 가능
어디서 사용?
  • 가변 크기의 태그, 버튼 목록 등 줄바꿈이 필요한 레이아웃에 적합
  • 고정된 너비 안에서 자식들이 자동으로 다음 줄로 넘어가야 할 때
  • 일반적으로 Padding, Container, Card 등의 자식 위젯으로 사용
기본 정렬
  • 가로 → 기본 방향은 왼쪽에서 오른쪽, 공간 부족 시 다음 줄로
  • 세로 → 줄은 위에서 아래로 쌓임
  • 내부 요소 기본 정렬:
    • alignment: 한 줄 내 자식들 정렬
    • runAlignment: 줄(행)들 정렬
레이아웃
  • 가로 → 부모가 주는 제약 내에서 자식 위젯을 좌우로 나열
  • 세로 → 공간 부족 시 자동 줄바꿈하며 아래로 확장
  • 자식 위젯의 크기와 부모의 너비 제약에 따라 줄 수와 높이가 동적으로 결정됨
  • 줄 사이 간격은 runSpacing, 항목 간 간격은 spacing으로 조절 가능
속성
  • directionAxis | 자식 나열 방향 (Axis.horizontal / Axis.vertical)
  • spacingdouble | 한 줄 내 자식 위젯 간 간격
  • runSpacingdouble | 줄과 줄 사이 간격
  • alignmentWrapAlignment | 한 줄 내 자식 정렬 (start, center, end, 등)
  • runAlignmentWrapAlignment | 전체 줄들의 정렬 방식
  • crossAxisAlignmentWrapCrossAlignment | 교차 축(세로)의 정렬
  • clipBehaviorClip | 넘치는 자식 위젯 클리핑 처리 방식
  • textDirectionTextDirection? | 텍스트 및 정렬 방향 (ltr, rtl)
  • verticalDirectionVerticalDirection | 줄을 위에서 쌓을지, 아래에서 쌓을지 설정
 
Share article

jjack1