본문 바로가기
프로그래밍/Kotlin

[Kotiln] RecyclerView 맨 아래로 스크롤시 다음 페이징 불러오기

by Youngs_ 2022. 7. 28.

RecyclerView를 이용해 DB에서 데이터를 100개중 50개를 가져왔다고 치자, 그럼 맨 아래로 스크롤 되었을때 나머지 50개를 추가로 불러와야 하는데 그럴때는 아래 코드를 사용하면된다.

var pastVisiblesItems: Int = 0
var visibleItemCount: Int = 0
var totalItemCount: Int = 0

recyclerView.addOnScrollListener(
            object : RecyclerView.OnScrollListener() {

                override fun onScrolled(recyclerView: RecyclerView, dx: Int, dy: Int) {
                    if (dy > 0) //check for scroll down
                    {
                        visibleItemCount = mLayoutManager.childCount
                        totalItemCount = mLayoutManager.itemCount
                        pastVisiblesItems = mLayoutManager.findFirstVisibleItemPosition()
                        if (loading) {
                            if (visibleItemCount + pastVisiblesItems >= totalItemCount) {
                                loading = false
//                            Log.v("...", "Last Item Wow !")
                                //Do pagination.. i.e. fetch new data
                                updateList(totalItemCount.toString())
                            }
                        }
                    }
                }

                override fun onScrollStateChanged(view: RecyclerView, scrollState: Int) {
                    //OnScrollListener.SCROLL_STATE_IDLE은 스크롤이 이동하다가 멈추었을때 발생되는 스크롤 상태입니다.

                }
            })

 


쿼리 작성은 이전에 작성했던 게시글을 참고하면 될것같다.

https://youngsblog.tistory.com/entry/Oracle-%EC%BF%BC%EB%A6%AC%EC%9D%98-%ED%8A%B9%EC%A0%95-%EB%B2%94%EC%9C%84%EB%A7%8C-%EC%A1%B0%ED%9A%8C

 

[Oracle] 쿼리의 특정 범위만 조회 ( PAGE 조회)

SELECT * FROM ( SELECT A.*, ROWNUM AS R FROM ( SELECT ( 쿼리 -- 해당부분에 실행할 쿼리를 입력한다. ) A WHERE ROWNUM <= 100 ) B WHERE R >= 1 위 쿼리를 이용해서 R부터 ROWNUM 사이의 값들만을 가져올수있..

youngsblog.tistory.com

 

'프로그래밍 > Kotlin' 카테고리의 다른 글

[kotlin] BottomNavigationView  (0) 2022.08.10
[Kotlin] TabLayout  (0) 2022.08.09
[kotlin] Singletone  (0) 2022.07.26
[kotlin] Object 사용법  (0) 2022.07.25
[Kotlin] Naver API를 이용해 책 검색 코드  (0) 2022.07.20

댓글