Flutter 위젯 및 생명주기

Flutter UI 개발

위젯이란?

화면에 보이는 UI를 말하고, 예를들어 Vue의 Component와 같다. 


Flutter 위젯의 특징

  • stateless statefull로 나뉜다.
    • stateless : 화면갱신이 이루어지지 않는 위젯
    • statefull : 화면갱신이 이루어지는 위젯

stateless위젯

  • 화면이 표시된 이후 사용자 이벤트나 동작이 있어도 내용이 바뀌지 않는다.

statefull위젯

  • 생명주기
    • createState() 
      • 위젯을 만들자마자 바로 실행
    • initState() 
      •  위젯이 만들어지고 이 함수가 실행된다.
      • 오직 한번만 실행된다.
      • 반드시 super.initState() 를 호출해야 한다.
    • didChangeDependencies() 
      • initState()함수가 실행된뒤에 바로 실행
      • 데이터에 의존하는 객체가 호출될 때마다 호출됩니다.
    • build() 
      • 화면에 보여질 위젯(UI 요소들)을 반환한다.
    • setState() 
      • State 객체의 상태가 변경되었다는 것을 프레임워크에 알리는 용도이다. 따라서 State객체의 상태가 변경될 때마다 setState() 함수를 통해서 알려야 한다. 그래야만 프레임워크가 build() 함수가 호출할 준비를 한다.
    • deactive()
      • 제거되기 전에 호출된다.
    • dispose() 
      • 제거될 때 호출된다.
    • didUpdateWidget()
      • 재빌드 될때 initState() 대신 실행


댓글

가장 많이 본 글