본문 바로가기

Flutter

flutter) StatefulWidget으로 re-excute build하기

728x90

 

Roll Dice 버튼을 누르면

이미지가 변경 되도록 만들었다.

 

그런데 실행은 되지만 이미지 변경이 되지 않았다.

 

 

그 이유는

StatelessWidget을 상속했기 때문이다

 

 

DiceRoller라는 이름으로

파일로 따로 빼서 

 

StatelessWidget이 아닌

StatefulWidget을 상속하여

 

데이터가 변경될 시에

re build를 하도록 만들어보자 

 


1. 파일을 만든다.

 

 

 

2. StatefulWidget을 상속한 클래스, State를 상속한 클래스 두가지를 만든다.

 

이렇게 해도 

메소드작동이 안된다...

 

그 이유는...

 

setState를 쓰지 않았기 때문이다

 

 

State를 상속한 클래스에서

setState 메소드를 사용하여 변수 값을 바꿔주면

 

update할 녀석들을

re-excute build 해준다.