-
카테고리
-
세부 분야
모바일 앱 개발
-
해결 여부
미해결
Provider + StateLess 에서 ScrollController Dispose() 사용 문제 질문
20.12.28 19:48 작성 조회수 559
0
Provider 를 사용하게 되면 StateLessWidget을 사용하는데 탭뷰를 다녀오면 리스트가 초기화되어서 이전에 보던 스크롤 위치를 고정시키려고 합니다.
이걸 하려고 보니 ScrollController를 사용해야 하던데 StateLess는 Dispose가 없어서 controller dispose를 하지 못합니다.
Provider 를 사용하는데 StateFull 을 사용해야 하는 것인가요?
TabView 로 다른 탭 갔다 오면 리스트 오프셋이 게속 0이네요 ㅠㅠ
답변을 작성해보세요.
1
Dongpyo Lee
질문자2020.12.28
Provider를 사용하더라도 Controller를 사용하게 되면 StatefulWidget 을 쓰는군요 감사합니다.
스크롤 위치 기억하는 방법은 찾아봤더니 아래 방법이 있네요
CustomScrollView(
key: PageStorageKey<String>('feed_scene'),
1
오준석
지식공유자2020.12.28
StatefulWidget 사용하시면 되고요.
ScrollController에 offset 프로퍼티 값을 Provider 쪽에 저장해 두고 initState() 에서 ScrollController의 jumpTo() 에 전달해 주면 될 듯 합니다.
처음엔 초기값 0 주시면 되겠네요
0
답변 3