inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Flutter + Firebase로 넷플릭스 UI 클론 코딩하기 [무작정 플러터]

홈 화면에 이미지 캐로셀 슬라이더 위젯 추가하기

CarouselSlider 최신 버전에서 onPageChanged 이슈 발생시

722

김동규
0

저는 강의를 따라가다 CarouselSlider에서 같은 문제를 만났는데, 이번 과정을 따라가면서 굳이 버전 낮추고 싶지 않아서 해결책을 찾았습니다.

구버전 사용하면 null 안정성 이슈 발생 여지도 있기도 했구요.

CarouselSlider(
            items: images,
            options: CarouselOptions(
              onPageChanged: (index, reason) {
                setState(() {
                  _currentPage = index;
                  _currentKeyword = keywords[_currentPage];
                });
              },
            ),
        ),

최근 생성자에서 이벤트를 등록하기보다는 이를 묶어주는 새로운 객체를 사용하는 패턴을 통해서 간결화가 되었고 이 라이브러리에서도 같은 패턴이 사용되었습니다. (비슷한 사례를 앱바 기능을 구현하다가 봤던 것 같네요.)

CarouselOptions에서 onPageChanged에 콜백을 추가하시면 신 버전에서도 동일하게 사용할 수 있습니다.

(onScrolled, pauseAutoPlayOnTouch 도 동일합니다)

 

동작 시연 (키워드가 바뀌는 것으로 확인 가능합니다.)

Flutter가 급상승하고 있는 만큼 굉장히 불안정한 상태기도 해서 아마 강사님도 대응하시기 힘드실 수 있다고 생각합니다만, 아무튼 배우시는 분들께 도움이 됬으면 좋겠습니다.

 

답변 1

0

정민

감사합니다 !!