ScrollController 뭔가

열심이·2023년 4월 10일

Flutter에서 ScrollController는 스크롤 가능한 위젯을 제어하는 데 사용되는 클래스입니다. ScrollController는 사용자가 스크롤을 수행할 때 위치 및 애니메이션 상태를 추적합니다. 이를 사용하여 스크롤 위치를 설정하거나 가져오거나, 스크롤 애니메이션을 시작하거나, 스크롤 가능한 위젯의 스크롤 상태를 수신하는 데 사용할 수 있습니다.

ScrollController는 ListView, GridView, SingleChildScrollView 등과 같은 스크롤 가능한 위젯에서 주로 사용됩니다. 기본적인 사용 방법은 다음과 같습니다:

ScrollController 인스턴스 생성:

ScrollController _scrollController = ScrollController();

스크롤 가능한 위젯에 ScrollController 할당:

ListView.builder(
  controller: _scrollController,
  itemCount: itemCount,
  itemBuilder: (BuildContext context, int index) {
    return ListTile(title: Text('Item $index'));
  },
);

ScrollController를 사용하여 스크롤 위치 제어 및 상태 알림 수신:

// 스크롤 위치 가져오기
double scrollPosition = _scrollController.position.pixels;

// 스크롤 위치 설정
_scrollController.jumpTo(newPosition);

// 애니메이션과 함께 스크롤 위치 설정
_scrollController.animateTo(
  newPosition,
  duration: Duration(milliseconds: 300),
  curve: Curves.easeInOut,
);

// 스크롤 상태에 대한 알림 수신
_scrollController.addListener(() {
  // 스크롤 위치, 애니메이션 상태 등에 대한 정보 처리
});

이러한 기능을 사용하여 자동 스크롤, 무한 스크롤, 페이징 등과 같은 다양한 스크롤 동작을 구현할 수 있습니다.

profile
열심이하는자

0개의 댓글