Flutter 화면 개발 시 Column과 Row는 대부분의 화면에 사용된다고 봐야 합니다. 
    이러한 Column과 Row를 사용하시면서 하나의 화면으로 개발 하시다가 화면 사이즈가 변경될 때, Overflow나 에러가 발생하는 경우가 생겨 당황하게 됩니다. 
    별 고민없이 고정된 넓이/높이로 화면 개발하면서 대부분이 한 번씩은 겪는다고 봅니다. 
    이렇게 화면 사이즈에 따라 유동성 있게 변경되는 방법 중에 하나가 Flexible입니다. 
    Flexible의 내용을 한 번 보시고 오시면 Expanded를 이해하기 쉽습니다. 
    2021.12.31 - [Flutter(플러터)/UI] - Flexible

     

    Flexible

    Flutter 화면 개발 시 Column과 Row는 대부분의 화면에 사용된다고 봐야 합니다. 이러한 Column과 Row를 사용하시면서 하나의 화면으로 개발 하시다가 화면 사이즈가 변경될 때, Overflow나 에러가 발생하

    byounghonglim.tistory.com


    결론부터 말하자면 Expanded == Flexible(fit:FlexFit.tight) 입니다. 
    잉? 왜 2개의 똑같은 기능이 있지? 라는 생각이 들지만
    사실 개발하시다보면 Flexible(fit:FlexFit.loose)는 거의 사용하실 일이 없습니다. 
    그럼 Flexible(fit:FlexFit.tight)를 써야하는데 괜히 복잡해보이고 귀찮으니까 그리고 좀 더 가독성 있는 이름에...(혼자만의 생각)
    만들지 않았나 싶습니다. 

    아무튼 간단하게 설명하자면
    화면에 남은 공간에 따라서 유동적으로 남은 공간은 모두 사용할 수 있게 하는 위젯입니다. 
    Expanded를 사용하지 않고 위젯을 그냥 사용한다면 오버플로나 에러가 발생하지만, Expanded를 사용하면 화면에 따라서 반응형으로 위젯을 보여주어 오버플로나 에러가 발생하지 않습니다.  

     

    https://api.flutter.dev/flutter/widgets/Expanded-class.html

     

    Expanded class - widgets library - Dart API

    A widget that expands a child of a Row, Column, or Flex so that the child fills the available space. Using an Expanded widget makes a child of a Row, Column, or Flex expand to fill the available space along the main axis (e.g., horizontally for a Row or ve

    api.flutter.dev

     

    댓글