일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Flutter
- 부호화
- 근대화
- mixin
- jetpack compose
- GridView
- 고사성어
- 동아시아
- 앨런튜링
- 사자성어
- 이미테이션게임
- DART
- 경황
- 조지레이코프
- overlay
- swiftUI
- 상대성이론
- navigator
- 제약
- 역사
- IntrinsicWidth
- 튜링기계
- constraint
- 영화
- 한자
- column
- 메이지유신
- 육서
- 정규표현식
- NATO
- Today
- Total
목록프로그래밍/Flutter (11)
인문주의 사피엔스
Flutter에서 실행 오류를 감지하기 위해서 사용하는 대표적인 방법으로 try catch가 있습니다. 그러나 try catch는 프로그래머가 관심을 두는 특정 위치에서 발생하는 오류를 잡을 때는 유용하지만, 불특정 위치에서 발생하는 오류를 잡는 목적으로는 적당하지 않습니다. 왜냐하면 불특정한 위치는 ‘모든’ 위치를 의미하기 때문입니다. 소스코드의 모든 위치에 try catch를 넣는 것은 불필요할 뿐만 아니라 불가능에 가까운 일이라고 할 수 있습니다. Flutter는 그런 불특정 오류를 다루기 위한 별도의 방법들을 제공하고 있습니다. 그 방법들은 오류의 특성에 따라 아래와 같이 세 가지 종류로 분류할 수 있습니다. 1. Flutter 내부에서 오류가 발생하는 경우 다음 코드는 버튼이 눌려졌을 때 오류를..
Overlay는 Flutter로 만든 앱의 화면 맨위에 독립적인 위젯을 추가할 때 사용하는 클래스입니다. 아래 그림은 Overlay의 사용법을 테스트하기 위해 만든 예제 앱의 화면입니다. Add 버튼을 누를 때마다 화면에 100x100 크기의 사각형이 하나씩 추가됩니다. Remove 버튼을 누르면 마지막에 추가된 사각형이 화면에서 제거됩니다. 각 사각형의 위치와 색깔은 무작위로 선택되고 위치를 나타내는 숫자가 그 위에 표시됩니다. Overlay 클래스 Overlay의 사용법은 Stack 클래스와 비슷합니다. 화면에 위젯들을 쌓아올리는 방식입니다. 다른 점은 Overlay를 통해 추가되는 위젯은 앱의 기본 위젯 트리에서 벗어나 독립적으로 존재한다는 것입니다. 따라서 Overlay는 다음과 같이 싱글톤 방식..
Flutter에서 UI 구성을 위해 위젯(widget)을 배치(layout)하는 방식은 위젯의 다양성, 유연성, 확장성 면에서 볼 때 매우 훌륭합니다. 위젯을 제대로 활용하려면 Flutter UI 프로그래밍의 핵심 주제의 하나인 제약(constraint)을 제대로 이해해야 합니다. Flutter 문서가 위젯의 배치와 제약을 상세히 설명하고 있음에도 불구하고 그 내용을 프로그래밍에 적용할 때는 적잖은 시행착오를 겪게 됩니다. 그런 시행착오의 결과로서 위젯의 배치와 제약에 대해 정리해 보기로 했습니다. 다음 공식 웹페이지의 내용을 함께 보면 Flutter의 위젯 배치 방식을 이해하는 데 많은 도움이 될 것입니다. https://docs.flutter.dev/development/ui/layout/constr..
Flutter에서 AlertDialog에 GridView를 포함할 때 예상과 다른 결과를 발견하게 됩니다. 그 원인을 분석하고 해결 방법을 살펴보겠습니다. 1. GridView in AlertDialog 다음은 AlertDialog의 content에 GridView를 입력하는 소스코드입니다. 그런데 이 코드를 실행하면 화면에 AlertDialog가 표시되지 않습니다. 대신 디버그 창에 아래와 같은 오류 메시지가 출력됩니다. Flutter 문서(https://api.flutter.dev/flutter/material/AlertDialog-class.html)에서 오류의 원인을 유추할 수 있습니다. Flutter 문서는 AlertDialog에 대해 다음과 같이 설명합니다. However, be aware t..