[flutter] Row 위젯과 Column 위젯의 차이점

Flutter에서는 Row 위젯과 Column 위젯을 사용하여 수평 또는 수직으로 위젯을 배치할 수 있습니다. 하지만 Row와 Column의 동작 방식에는 몇 가지 차이점이 있습니다. 이번 포스트에서는 Row와 Column의 차이점을 알아보겠습니다.

Row 위젯

Row는 위젯들을 수평으로 배치하는데 사용됩니다. Row 위젯은 자식 위젯들을 가로 방향으로 나열하며, 일반적으로 화면의 위젯들을 좌에서 우로 배치할 때 사용됩니다. 자식 위젯들은 여러 줄에 걸쳐 배치될 수 있지만, 초과된 자식 위젯은 자동으로 다음 줄로 이동합니다.

아래는 Row 위젯의 예시입니다.

Row(
  children: [
    Text('Widget 1'),
    Text('Widget 2'),
    Text('Widget 3'),
  ],
)

Column 위젯

Column은 위젯들을 수직으로 배치하는데 사용됩니다. Column 위젯은 자식 위젯들을 세로 방향으로 나열하며, 일반적으로 화면의 위젯들을 위에서 아래로 배치할 때 사용됩니다. 자식 위젯들은 여러 열에 걸쳐 배치될 수 있지만, 초과된 자식 위젯은 자동으로 다음 열로 이동합니다.

아래는 Column 위젯의 예시입니다.

Column(
  children: [
    Text('Widget 1'),
    Text('Widget 2'),
    Text('Widget 3'),
  ],
)

차이점 정리

Row와 Column의 차이점은 다음과 같습니다.

  1. 방향: Row는 수평 방향으로 위젯을 배치합니다. Column은 수직 방향으로 위젯을 배치합니다.
  2. 자식 위젯 배치: Row는 자식 위젯들을 가로 방향으로 나열합니다. Column은 자식 위젯들을 세로 방향으로 나열합니다.
  3. 런타임 동작: Row는 초과된 자식 위젯을 다음 줄로 자동으로 이동시킵니다. Column은 초과된 자식 위젯을 다음 열로 자동으로 이동시킵니다.

Row와 Column은 다양한 경우에 유용하게 사용될 수 있으며, 프로젝트에 따라 선택하여 적절하게 사용하면 됩니다.

더 자세한 내용은 Flutter Row 위젯Flutter Column 위젯 문서를 참고하세요.