상세 컨텐츠

본문 제목

[Flutter]StatefulWidget 살펴보기

Flutter

by 핸드메이드코드 2022. 6. 20. 06:55

본문

플러터를 사용할때 가장 먼저 만나는 위젯은 StatelessWidget 이다.

StatelessWidget 은 이름에서 어느 정도 알 수 있듯이 상태변화가 앖는 경우에 사용하는 위젯이다.

StatefulWidget 은 그와 반대로 상태가 변하는 경우에 사용하는 위젯이다.

 

플러터 프로젝트를 처음 생성했을때 카운트 숫자를 변경시키는 기능에서 StatefulWidget을 확인할 수 있다.

 

StatefulWidget 의 구현 함수 createState()를 보면 State 라는 인스턴스를 생성해주고 있다 StatefulWidget 의 내부를 들여다보면 

@protected, @factory 가 보인다.

@factory 의 경우 새로 인스턴스를 생성하지 않고 기존에 사용한 객체를 재사용하는 경우에 사용한다.

그래서 상태가 변할때 기존의 위젯을 다시 그려주고 상태의 변화를 보여줄 수 있다.

 

그러면 이러한 상태를 전달해 주는 State 객체를 들여다 보자.

State 객체는 상태를 관리할 StatefulWidget 를 타입으로 하는 객체에 상태를 전달해주는 역할을 하고 있다.

StatefulWidget.createState 를 실행하면 그전에 initState 를 실행하게 되고, 상태가 변경될때 변경된 상태를 반영하기 위해서 

setState를 구현해 주어야 한다.

여기에서는 상태의 변화를 버튼을 누를때 마다 카운트가 1씩 늘어나도록 반영하였다.

'Flutter' 카테고리의 다른 글

[Flutter] GetX: simple state manager  (0) 2022.06.27
[Flutter] main.dart 살펴보기  (0) 2022.06.13

관련글 더보기