Flutter Setstate ?

2023. 7. 18. 08:18·Flutter
728x90

setState() 이란?

  • setState() 함수 안에서의 호출은 State 에서 무언가 변경된 사항이 있음을 Flutter Framework 에 알려주는 역할이다.
  • 이로 인해 UI 에 변경된 값이 반영될 수 있도록 build 메소드가 다시 실행된다. 

쉽게 말해서 우리가 StatefulWudget 을 자주 사용을 한다.

 

StatefulWidget
StatefulWidget은 변경될 수 있는(mutable) 상태(state)를 가지고 있는 위젯이다.

여기서 상태는 1)위젯이 빌드되는 동시에 읽을 수 있고, 2)위젯의 생명 주기동안 변경할 수 있는 정보를 말한다.

그래서 StatefulWidget는 UI의 일부분이 동적으로 변화할 때 유용하게 사용할 수 있다.

아래는 StatefulWidget을 사용할 때의 기본 코드 구조이다.

class Example extends StatefulWidget {
  Example({Key? key}) : super(key: key);

  @override
  _ExampleState createState() => _ExampleState(); // State 생성.
}

class _ExampleState extends State<Example> {
  @override
  Widget build(BuildContext context) {
    return ... // UI에서 변화할 부분.
  }
}

StatefulWidget 인스턴스는 mutable 하지 않다. StatefulWidget 인스턴스 자체는 immutable 하지만, mutable한 상태(state)를 별도로 관리한다. 상태(state)가 저장되는 곳은 State 오브젝트이며, State 오브젝트는 createState() 메소드를 통해 생성된다.

따라서 UI에서 변화할 부분은 State 클래스의 build 메소드 리턴 값에 들어간다.

 

결론은 함수 안에다가 setState((){}); 라는 코드를 넣어주면 , "화면을 다시 그려라!" 라고 명령하는거다 ~!

728x90
LIST

'Flutter' 카테고리의 다른 글

Flutter Package Sizer  (2) 2023.10.25
StatefulWidget의 LifeCycle(생명주기)  (2) 2023.09.19
생성자와 널 세이프티 이해하기  (0) 2023.07.22
Flutter SQLite(2)  (1) 2023.07.14
Flutter SQLite 1)  (1) 2023.07.13
'Flutter' 카테고리의 다른 글
  • StatefulWidget의 LifeCycle(생명주기)
  • 생성자와 널 세이프티 이해하기
  • Flutter SQLite(2)
  • Flutter SQLite 1)
Mr. Joo
Mr. Joo
  • Mr. Joo
    삽질의 시작
    Mr. Joo
  • 전체
    오늘
    어제
    • 분류 전체보기 (217) N
      • Flutter (70)
      • Android (9)
      • Swift (5) N
      • React (11)
      • 인공지능 (4)
      • CS (10)
      • 개발 뉴스 (105) N
      • IT 기기 (1)
      • 알면 유용한 정보 (2)
  • 인기 글

  • 태그

    오늘의 뉴스
    이슈
    앱 개발
    오늘의 이슈
    DART
    기술 뉴스
    오늘의 개발 뉴스
    개발
    기술
    앱
    Flutter
    개발 뉴스
    Dart 기초
    앱개발
    개발 이슈
    react
    뉴스
    뉴스 모음
    오늘의 기술 뉴스
    플러터
  • 최근 댓글

  • 최근 글

  • 250x250
  • hELLO· Designed By정상우.v4.10.3
Mr. Joo
Flutter Setstate ?
상단으로

티스토리툴바