본문 바로가기
Flutter

AnimatedSwitcher에서 prev next 구분하기

by 붕어사랑 티스토리 2025. 7. 14.
반응형

플러터에서 AnimatedSwitcher를 사용할때 transitionBuilder를 이용하여 prev와 next를 구분해 각각 다른 애니메이션을 적용하고 싶을때가 있다.

 

이에 두 위젯을 구분해야 하는데 가장 많이쓰이는 방법은 key를 이용하는것이다.

 

 

 

허나 이 방법은 아주 치명적인 문제가 있는데, 유저가 화면을 연타하여 애니메이션을 연속적으로 호출하면 duplicatedKey Exception이 발생한다.

 

 

이를 해결하는 방법은 사실상 외부변수로 isPrev = true를 선언한 뒤 불릴때마다 값을 토글해주는 방식밖에 없다.

 

코드는 좀 더러워지지만 지금까지 찾은 방법줌 가장 확실하다.

반응형

댓글