1. Expanded Widget
widget을 정렬하고 나서 그 위젯으로 화면을 채우고 싶다면 어떻게 하는 게 좋을까?
안드로이드 스튜디오에서 weight를 주듯 비슷하게 하면 된다.
Container 위젯이 처음에 3개 있다고 했을 때, 위젯에 마우스를 갖다대고 wrapped width widget을 선택해준다.
그리고 widget을 Expanded로 설정하면 3개의 container가 한 줄에 꽉 차게 된다.
이 때, 비율을 다르게 하고 싶다면
flex 값을 주면 된다. 만일 3, 2, 1 이런식으로 값을 주면, 6/3, 6/2, 6/1 의 너비를 갖게된다. (총 너비 6--> flex 더한거)
그리고 이미지도 똑같이 Expanded로 위젯으로 감싸서 주면 컨테이너 위에 해당되는 너비 만큼의 이미지가 덮이게 된다.
body:Row(
children: <Widget>[
Expanded(
child: Image.asset('assets/blue.png'),
flex:3,
),
Expanded(
flex: 1, //portion of the width (전체 flex에서)
child: Container(
padding: EdgeInsets.all(30.0),
color: Colors.cyan,
child:Text('1'),
),
),
Expanded(
flex: 1,
child: Container(
padding: EdgeInsets.all(30.0),
color: Colors.pinkAccent,
child:Text('2'),
),
),
Expanded(
flex: 1,
child: Container(
padding: EdgeInsets.all(30.0),
color: Colors.amber,
child:Text('3'),
),
),
],
),
액션 메뉴와 flutter outline 을 사용하면 간단하게 정렬, 패딩 등을 추가할 수 있다. 또한 위젯의 위치도 변경할 수 있다.
액션 메뉴를 사용하려면 해당 위젯을 클릭하고 앞에 나오는 노란 전구를 클릭하면 다음과 같은 메뉴들이 뜬다.
원하는 것을 고르면 코드가 자동으로 바뀐다.
아니면 flutter outline을 눌러서 할 수도 있다. 해당 위젯을 누르면 해당 위젯의 위치로 이동할 수 있고, 오른쪽 버튼을 누르면 다음과 같은 옵션들이 뜬다. 위에 보이는 아이콘을 눌러서도 center, padding 등을 추가할 수 있다.
'mobile > flutter' 카테고리의 다른 글
flutter -카드형태로 List를 출력하기 (0) | 2020.12.13 |
---|---|
flutter - ID 카드 만들기 - stateless widget / stateful widget (0) | 2020.12.13 |
flutter - rows, columns (0) | 2020.12.08 |
flutter - container / padding (0) | 2020.12.08 |
flutter - button/ icon / (0) | 2020.12.08 |