728x90
반응형
Flutter에서 스크롤뷰 바닥감지를 하여 무한스크롤 기능을 구현할 수 있다.
listview 바닥감지하는 방법 2가지가 있다.
1. NotificationListener 사용
- listview를 NotificationListener로 감싸준다.
NotificationListener<ScrollNotification>(
onNotification: (scrollNotification) {
if (scrollNotification is ScrollEndNotification) {
print("Scroll End");
// 여기에 스크롤 바닥감지시 실행 할 코드를 넣어준다.
}
return false;
},
child: ListView(
//...
),
)
2. ScrollController 사용
- ScrollController.postion을 통해 바닥감지
ScrollController _scrollController = new ScrollController();
_scrollController.addListener((){
if(_scrollController.position.pixels == _scrollController.position.maxScrollExtent){
Print('Scroll End');
//여기에 바닥감지시 실행할 코드를 작성한다.
}
});
- listview에 controller 추가
ListView(controller: _scrollController, children: //리스트뷰내용 );
- ScrollController dispose()해준다.
@override
void dispose() {
_scrollController.dispose();
super.dispose();
}
728x90
반응형
'Flutter' 카테고리의 다른 글
[j Flutter] 상단(AppBar) 뒤로가기 버튼 색상변경 & 아이콘 변경 (0) | 2020.05.27 |
---|---|
[j Flutter] 앱 업데이트하기 (0) | 2020.05.19 |
[j Flutter] xcode에서 ios 빌드시 오류처리방법 (0) | 2020.05.12 |
[j Flutter] TextField HintText (vertical center) + 밑줄 없애기 + 검색아이콘 추가 (0) | 2020.05.12 |
[j Flutter] List 로딩 중 구현 with progressbar (0) | 2020.04.22 |