inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

this.controller = controller; 관련해서 질문드립니다.

271

David Heo

작성한 질문수 12

0

안녕하세요. 다름이 아니라

onWebViewCreated: (WebViewController controller) {
  this.controller = controller;
},

이 코드가 먹히지 않는 것 같아서 질문글 남깁니다.

분명 모든 코드를 똑같이 따라했는데 controller에는 계속 null 값이 있는 것 같아 보입니다.

제 생각에 stateless 위젯이라 그런 것 같아서 stateful 위젯으로 변경 후

onWebViewCreated: (WebViewController controller) {
  setState(() {
    this.controller = controller;
  });
},

위와 같이 setState를 활용해 controller에 값을 할당하니 이제야 정상적으로 작동이 되더군요.

다시 생각해봐도 stateful 위젯 및 setState를 활용해야 될 것 같은데 강의에서 stateless 위젯을 활용하신 이유와, (제가 작성한 stateless 코드는 제대로 작동하지 않았지만) 강의에서 코드가 제대로 작동한 이유가 궁금합니다.

Flutter 클론코딩

답변 1

0

코드팩토리

안녕하세요.

setState() 함수의경우 build() 함수를 재실행해주는 역할을 합니다.

하지만 controller의 경우 build() 함수가 재실행돼서 UI가 변경돼야하는 부분이 아니라 넣지 않아도됩니다.

제 생각에는 다른 부분에서 문제가 있었을걸로 예상됩니다!

0

David Heo

안드로이드 스튜디오 자체를 껐다 켜보니 문제없이 잘 실행되네요... 분명 안 됐었는데 말이죠 ㅋㅋ; 다음부터는 뭔가 안 되면 안드로이드 스튜디오 자체를 재실행 해봐야겠네요. 감사합니다!

LocationPermission.denied관련 질문입니다

0

588

1

videocontrollor dispose

0

434

1

onlogotap함수의 video nullable관련질문

0

392

1

setState 사용 차이

1

449

1

블로그 웹앱 배포 방법

0

510

1

sizedbox 위젯에 primary = RED_COLOR

1

434

1

개념 강의 순서 질문

0

409

1

materialstateProperty 다른 메소드관련질문

0

418

1

내 노트 모아보기

0

502

1

SafeArea (iPhone, Android)

0

408

1

web view 실행 안됩니다.

0

409

1

랜덤 숫자 생성기 프로젝트 관련

0

539

2

안도르이드 애뮬레이터 질문

0

384

1

super를 사용하는 건, 부모와 자식 클래스의 파라미터 이름이 꼭 같아야하나요?

0

476

1

선생님 flutter device를 크롬으로 했을때 http 통신이 안됩니다..

0

784

1

no element

0

442

1

암호화

0

236

1

책과 강의

0

388

1

voidcallback함수와 클래스내에 변수선언에 관한질문

0

476

1

android studio 세팅

0

482

1

오늘도 출근 세팅하기

2

563

1

재사용 클래스 임폴트 방법

0

485

1

가상화를 못하는 CPU인건가요? 확인 부탁드립니다.

0

401

1

flutter dispose 관련

0

1393

2