Widget 이론
위젯은 모두 불변의 법칙 가짐
하지만 위젯의 값을 변경해야 할 때가 있음
변경이 필요하면 기존 위젯 삭제하고 완전 새로운 위젯으로 대체
Stateless: 상태 없고, 변화 없는 위젯
한 번만 빌드
한번만 그리고 다시 그리지 않는다는 의미
-> Life Cycle 없고 관리 용이
Stateful: 상태 있고, 액션 변화 있는 위젯
상태 변경됨에 따라 빌드 여러번
StatefulWidget Life Cycle
Constructor로 생성되고 생성 되자마자 build 함수 실행
이전 Container 예제와 마찬가지로 변경이 필요하면 새로운 위젯 만들어버림
하나의 StatefulWidget은 라이프 사이클동안 단 한번만 build 함수 실행
- createState()
- mounted == true
- initState()
- didChangeDependencies()
- build()
- didUpdateWidget()
- setState()
- deactivate()
- dispose()
- mounted == false
위젯 색상 바뀌는 앱에 앱바 등 배운 것 추가 구현해 보기 😽
컨테이너 속 숫자 카운팅 부분도 텍스트 스타일 추가 구현
statefulWidget은 삭제 후 새로 만들어지지만 state는 사라지지 않고 새로 생긴 statefulWidget에 붙음
Delete Widget하면 state도 삭제됨(카운트 다시 0)
'CS > Flutter | Dart' 카테고리의 다른 글
Dart DateTime (0) | 2023.07.19 |
---|---|
Photo Slide Show App (0) | 2023.07.19 |
webview 4.0.2 ver. (0) | 2023.07.17 |
webview, javascriptMode, controller (0) | 2023.07.17 |
Row, Column 실습 (0) | 2023.07.17 |