pageController.animateToPage(pageController.initialPage,
   duration: Duration(milliseconds: 500),
   curve: Curves.elasticInOut
);

pageController 에서 animateToPag 쓸때 curve: 에서 Curves. 애니메이션 들 중에 디버그는 잘되고 릴리즈때 pageController.animateToPage로 다음페이지로 넘어갈때 duration으로 시간정해준것보다 훨씬많은 시간이 걸리는게 있는데 이유가.

smaller/faster animations that produce values that are “less negative” (or close enough to zero). value가 0에 가까뭐서 이런게 발생한다고합니다

그래서 그중 Curves.linear 나 Curves.ease 가 그런게 없음

I think this happens with any curve that initially produces a negative value (like Curves.elasticInOut). I can't pinpoint the exact line (I suspect it's in applyUserOffset from ScrollPositionWithSingleContext), but negative values seem to be treated as if the animation has already completed. It may occasionally work with smaller/faster animations that produce values that are "less negative" (or close enough to zero).

Curves.linear or Curves.ease* don't produce negative values, so they should work consistently.