[flutter] 스택드 위젯을 사용하여 날씨 앱 화면 구성하기
이번 글에서는 Flutter에서 스택(Stack) 위젯을 사용하여 간단한 날씨 앱 화면을 구성하는 방법에 대해 소개하려고 합니다.
스택(Stack) 위젯 개요
스택(Stack) 위젯은 다른 위젯들을 겹쳐서 배치할 수 있는 위젯입니다. 첫 번째 자식 위젯을 아래에, 다음 자식 위젯을 그 위에 배치합니다. 스택 위젯을 사용하면 좌표를 직접 지정하여 자식 위젯들을 배치할 수 있습니다.
날씨 앱 화면 구성하기
-
먼저, Stack 위젯을 사용하여 배경 이미지와 날씨 정보를 표시할 위젯을 겹쳐서 배치합니다.
Stack( children: [ Container( decoration: BoxDecoration( image: DecorationImage( image: AssetImage('assets/background.jpg'), fit: BoxFit.cover, ), ), ), Column( mainAxisAlignment: MainAxisAlignment.center, children: [ Text( '서울', style: TextStyle( fontSize: 32, fontWeight: FontWeight.bold, color: Colors.white, ), ), Text( '맑음', style: TextStyle( fontSize: 24, color: Colors.white, ), ), ], ), ], )
위 코드에서는 배경 이미지를 첫 번째 자식으로, 날씨 정보를 두 번째 자식으로 추가하여 화면을 구성했습니다. 배경 이미지는
Container
위젯을 이용하여 표현하고, 날씨 정보는Column
위젯 내에Text
위젯을 이용하여 구성했습니다. -
이제, 이 화면을 화면 전체에 꽉 채우도록 앱 전체 화면에
Stack
을 배치합니다.MaterialApp( home: Scaffold( body: Stack( children: [ // ...위의 Stack 코드 삽입... ], ), ), )
위 코드는
MaterialApp
을 사용하여 앱의 기본적인 구조를 설정하고,Scaffold
내에Stack
을 추가하여 전체 화면에 날씨 앱 화면을 구성합니다.
이렇게 하면 Flutter에서 스택드 위젯을 사용하여 간단한 날씨 앱 화면을 구성할 수 있습니다. 스택(Stack) 위젯을 이용하면 여러 위젯들을 겹쳐서 복잡한 화면을 쉽게 구성할 수 있으며, 좌표를 직접 지정하여 자유롭게 배치할 수 있는 장점이 있습니다.
더 많은 세부적인 화면 구성에 대한 내용은 Flutter 공식 문서를 참고하시기 바랍니다.
Happy coding! 🚀