일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 상대성이론
- 근대화
- 육서
- navigator
- 정규표현식
- DART
- 제약
- IntrinsicWidth
- jetpack compose
- overlay
- 고사성어
- 한자
- 동아시아
- 사자성어
- Flutter
- 조지레이코프
- 이미테이션게임
- 앨런튜링
- 영화
- swiftUI
- 경황
- 부호화
- constraint
- column
- NATO
- 튜링기계
- 메이지유신
- 역사
- GridView
- mixin
- Today
- Total
목록프로그래밍/Flutter (11)
인문주의 사피엔스
다음 그림은 임의의 너비를 갖는 두 개의 위젯을 아주 단순하게 나타낸 것입니다. ====== === 이 위젯들을 다음처럼 가로축 방향으로 가장 큰 너비에 맞춰 정렬하고, 세로축 방향으로 위아래 빈 공간 없이 배치하려면 어떻게 해야 할까요? ====== ====== 1. Column Column은 다수의 위젯을 세로축 방향으로 배치할 때 사용하는 위젯입니다. 아래 그림은 Column을 이용해 빨간 위젯과 노란 위젯을 세로축 방향으로 배치한 것입니다. 검은 영역은 Column의 빈 공간에 해당됩니다. 다음은 위 그림의 소스코드입니다. 여기서 노란 위젯이 가로축 방향으로 가운데 정렬되고, 검은색의 Column 영역이 세로축 방향의 빈 공간을 꽉 채우는 이유는 Column의 기본값이 다음과 같이 설정되어있기 때..
Flutter는 애니메이션의 구현을 위한 다양한 도구를 제공합니다. 종류가 다양한 만큼 각 도구의 특징을 이해해야 용도와 목적에 맞는 도구를 제대로 선택할 수 있습니다. 따라서 애니메이션을 종합적으로 이해하고 전체 그림을 파악하는 것이 중요합니다. 하나의 애니메이션을 다양한 방법으로 구현해보면 다양한 애니메이션 구현 방법 간의 차이를 명확하게 이해할 수 있습니다. 예제 앱 아래 그림은 예제 앱의 화면입니다. 예제 앱에는 동그라미가 그려진 여러 개의 버튼이 있습니다. 각각의 버튼을 누르면 각각의 애니메이션이 실행됩니다. 애니메이션의 내용은 모두 동일합니다. 동그라미의 크기가 줄어들었다 다시 원래 크기로 복원됩니다. 대신 애니메이션을 구현하는 방법은 서로 다릅니다. 비교를 위해 애니메이션을 적용하지 않은 경..
null 안정성(safety)의 의미 문제의 발생 bool isEmpty(String string) => string.length == 0; void main() { String value; isEmpty(value); } null 안정성(safety)이 적용되지 않은 이 간단한 코드는 null 안정성을 적용하지 않은 환경에서 문제 없이 컴파일됩니다. 그러나 코드를 실행하면 isEmpty 함수 내부의 string.length에서 null 참조 오류가 발생합니다. 불가능한 해결책 오류가 발생한 이유는 String value; 구문에서 value가 초기화되지 않았기 때문입니다. null 참조 오류를 막는 방법은 하나 뿐입니다. value를 참조하는 모든 곳에 null 여부를 확인하는 코드를 추가하는 것입니다..