[Flutter Layout]Padding, SizedBox, Transform

김기현·2025년 3월 6일

Flutter Layout

목록 보기
8/8

Padding

padding
padding은 자식간의 공간을 만들고 싶을 때 사용한다.

Container.padding을 사용하지 않고 Padding을 사용하는가

Container는 속성을 직접 구현하지 않고 여러 간단한 위젯들을 결합하여 편리한 패키지로 만든다.
Padding은 간단한 기능 하나의 위젯이다.
어떤 것을 사용하든 자유롭게 사용하면 된다.

Constructors

Padding({Key? key, required EdgeInsetsGeometry padding, Widget? child})

Properties

  • child
  • padding(EdgeInsetsGeometry)
    • 자식들 간의 공간이 얼마나 될것인가

SizedBox

SizedBox
위젯의 크기롤 특정 수치로 고정하고 싶을 때 사용한다.

Constructor

SizedBox({Key? key, double? width, double? height, Widget? child})

SizedBox.expand({Key? key, Widget? child})
//부모가 허락하는 만큼 커진다.
SizedBox.fromSize({Key? key, Widget? child, Size? size})

SizedBox.shrink({Key? key, Widget? child})
//부모가 허락하는 만큼 작아진다.
SizedBox.square({Key? key, Widget? child, double? dimension})
//정사각형으로 만든다.

Properties

  • Child
  • height(double)
  • width
    • null이 아니라면 자식들에게 이 수치를 강요한다.

Transform

transform
자식 위젯을 그리기 전에 변환하는 위젯이다.
위젯들을 회전하거나 이동하게 할 수 있다.
3차원으로 움직이게 하려면 행렬을 사용해야한다.

Constructors

Transform({Key? key, required Matrix4 transform, Offset? origin, AlignmentGeometry? alignment, bool transformHitTests = true, FilterQuality? filterQuality, Widget? child})

Transform.flip({Key? key, bool flipX = false, bool flipY = false, Offset? origin, bool transformHitTests = true, FilterQuality? filterQuality, Widget? child})
//좌우 위아래로 반전 시킬 수 있다.
Transform.rotate({Key? key, required double angle, Offset? origin, AlignmentGeometry? alignment = Alignment.center, bool transformHitTests = true, FilterQuality? filterQuality, Widget? child})
//중심을 기준으로 회전한다.
Transform.scale({Key? key, double? scale, double? scaleX, double? scaleY, Offset? origin, AlignmentGeometry? alignment = Alignment.center, bool transformHitTests = true, FilterQuality? filterQuality, Widget? child})
//2D평면의 크기를 키운다.
Transform.translate({Key? key, required Offset offset, bool transformHitTests = true, FilterQuality? filterQuality, Widget? child})
//translation을 사용하여 변환 시킨다.

Properties

  • alignment(alignmentGeometry?)
    • 정렬의 기준이다. 박스의 크기에 연관된다.
  • child
  • filterQuality(FilterQuality)
    • 변환하는 비트맵을 연산하는 데 있어서 필터링할 퀄리티를 설정한다.
  • origin(Offset?)
    • 행렬을 적용할 좌표 시스템의 기준이다.(왼쪽 상단이 기준이다.)
  • transform(Matrix4)
    • 자식위젯을 그려지는 동안 변환시킬 행렬이다.
  • transformHitTests(bool)
    • hitTest를 수행할 때 변환을 적용할 지 여부

0개의 댓글