SingleChildScrollView 위 / 아래 스크롤 효과 없애기

Chocomilk·2021년 1월 22일
0

다양한 기기의 화면에 맞추기 위해 SingleChildScrollView를 자주 쓰게 된다.
그러면 화면상단이나 하단부분에서 스크롤을 하면 다음과 같은 효과가 나온다.

이러한 효과를 없애고 싶을때 다음과 같이 적용하면 된다.

NotificationListener<OverscrollIndicatorNotification>(
  onNotification: (OverscrollIndicatorNotification overscroll) {
    overscroll.disallowGlow();
    return;
  },
  child: SingleChildScrollView()
)

화면의 공간보다 더 많이 스크롤 했을때를 감지하여 해당 효과를 없애준다.
아니면 다음과 같이 적용해도 같은 결과를 얻을 수 있다.

child : SingleChildScrollView(
physics : ClampingScrollPhysics()
child: Widget()
)

BouncingScrollPhysics () : 목록의 끝 / 시작시 bouncing 스크롤(GlowEffect,Bouncing 효과)
NeverScrollableScrollPhysics () : 해당 영역에서는 스크롤 불가
ClampingScrollPhysics () : GlowEffect가 제거된 상태로 정상 동작

profile
어제보다 한 발짝 더 나아가려는 Flutter 개발자

0개의 댓글