Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 기본형 매개변수
- 오버로딩
- 초기화 순서
- 운영체제의 예
- 호출스택
- this()
- 참조형 매개변수
- 조상의 생성자
- webview_flutter
- 운영체제의 분류
- object클래스
- static import문
- FLUTTER
- 프로그래머스
- stateful widget 생명주기
- 운영체제의 목적
- 클래스 변수
- PriorityQueue
- static 메서드
- 운영체제란 무엇인가
- 이것이코딩테스트다
- 참조형 반환타입
- stateful widget
- 명예의전당(1)
- 운영체제의 구조
- 인스턴스 메서드
- 오버라이딩과 오버로딩 차이점
- stateless widget
- 객체 배열
- this()와 참조변수 this 차이점
Archives
- Today
- Total
Coram Deo
[Flutter] BoxFit 본문
"BoxFit"은 Flutter에서 이미지 위젯을 다룰 때 사용되는 열거형(enumeration) 값 중 하나로, 이미지를 다양한 방식으로 위젯 영역에 맞게 크기를 조정할 때 사용됩니다. BoxFit은 Image 위젯과 같은 이미지 관련 위젯에서 fit 속성을 설정할 때 유용합니다. 이 속성을 통해 이미지를 어떻게 확장하고, 자르고, 맞추는지를 결정할 수 있습니다.
1. BoxFit.fill
- 이미지가 위젯의 크기에 맞게 완전히 채워집니다. 이때 이미지의 가로 세로 비율은 무시되고, 위젯의 크기만큼 이미지가 늘어나거나 줄어듭니다.
- 특징: 이미지가 왜곡될 수 있음.
-
Image.asset('assets/image.png', fit: BoxFit.fill)
2. BoxFit.contain
- 이미지는 위젯 영역 안에 전체가 보이도록 비율을 유지하며 크기가 조정됩니다. 가로 또는 세로 방향 중 더 작은 쪽에 맞춰서 이미지가 조정되고, 나머지 공간은 비어 있을 수 있습니다.
- 특징: 이미지 왜곡 없이 크기 조정됨.
-
Image.asset('assets/image.png', fit: BoxFit.contain)
3. BoxFit.cover
- 이미지가 위젯 영역을 완전히 채우되, 이미지의 비율을 유지하면서 이미지를 확대하여 부족한 부분을 잘라냅니다.
- 특징: 이미지 비율이 유지되며, 자르기 효과가 발생할 수 있음.
- Image.asset('assets/image.png', fit: BoxFit.cover)
4. BoxFit.fitWidth
- 이미지가 위젯의 가로 크기에 맞춰 크기가 조정됩니다. 세로 크기는 비율에 맞춰 조정되며, 이미지가 가로 영역을 채우고 세로는 자르거나 비어 있을 수 있습니다.
- 특징: 이미지 가로는 꽉 차지만, 세로는 비율에 맞게 조정됨.
-
Image.asset('assets/image.png', fit: BoxFit.fitWidth)
5. BoxFit.fitHeight
- 이미지가 위젯의 세로 크기에 맞춰 크기가 조정됩니다. 가로 크기는 비율에 맞춰 조정되며, 이미지가 세로 영역을 채우고 가로는 자르거나 비어 있을 수 있습니다.
- 특징: 이미지 세로는 꽉 차지만, 가로는 비율에 맞게 조정됨.
-
Image.asset('assets/image.png', fit: BoxFit.fitHeight)
6. BoxFit.none
- 이미지의 원래 크기를 유지하며, 이미지가 위젯에 맞지 않으면 일부가 잘리거나 비어 있게 됩니다.
- 특징: 이미지 크기는 변경되지 않으며, 위젯 영역에 맞지 않으면 일부가 잘림.
-
Image.asset('assets/image.png', fit: BoxFit.none)
7. BoxFit.scaleDown
- 이미지가 원래 크기보다 커질 수는 없지만, 위젯에 맞게 줄어들 수 있습니다. 즉, 이미지는 원본 크기 이하로만 축소되고, 확대되지는 않습니다.
- 특징: 이미지가 축소되지만 확대되지는 않음.
-
Image.asset('assets/image.png', fit: BoxFit.scaleDown)
요약:
- BoxFit은 이미지를 위젯의 크기에 맞추는 방법을 제어하는 중요한 속성입니다.
- 이미지의 왜곡 여부나 잘림 처리 여부 등을 설정할 수 있어 UI 디자인에서 매우 유용하게 사용됩니다.
어떤 BoxFit을 선택할지는 이미지가 보여져야 할 컨텍스트와 디자인 요구 사항에 따라 달라집니다. 예를 들어, 프로필 이미지나 사진 갤러리에서는 BoxFit.cover가 많이 사용되며, 전체 내용이 보이도록 하려면 BoxFit.contain이 더 적합할 수 있습니다.
'Flutter' 카테고리의 다른 글
[Flutter] Future builder 와 Stream builder의 차이 (0) | 2024.10.16 |
---|---|
[Flutter] go_router / go와 push의 차이 / goNamed와 go의 차이 (0) | 2024.09.30 |
[Flutter] 장바구니 페이지 - ListView 사용하여 product 보여주기 (0) | 2024.08.20 |
[Flutter] shopping mall - 새로 배운 개념 정리 (0) | 2024.08.08 |
[Dart] 문법 정리 4 - ??와 ??= (0) | 2024.08.06 |