package Ġcom . ind ram ah kota . movie app . ui . pagination Ċ Ċ import Ġandroidx . recyclerview . widget . Linear LayoutManager Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ Ċ abstract Ġclass ĠPagination Scroll Listener Ġprotected Ġconstructor ( ĊĠĠĠ Ġprivate Ġval Ġlayout Manager : ĠLinearLayoutManager Ċ ): ĠRecyclerView . On Scroll Listener () Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġon Sc rolled ( re cyclerView : ĠRecyclerView , Ġdx : ĠInt , Ġdy : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Sc rolled ( re cyclerView , Ġdx , Ġdy ) ĊĠĠĠĠĠĠĠ Ġval Ġvisible ItemCount Ġ= Ġlayout Manager . child Count ĊĠĠĠĠĠĠĠ Ġval Ġtotal ItemCount Ġ= Ġlayout Manager . item Count ĊĠĠĠĠĠĠĠ Ġval Ġfirst Visible Item Position Ġ= Ġlayout Manager . findFirst Visible Item Position () ĊĊĠĠĠĠĠĠĠ Ġif Ġ(! is Last Page ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( visible ItemCount Ġ+ Ġfirst Visible Item Position Ġ>= Ġtotal ItemCount ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ&& Ġfirst Visible Item Position Ġ>= Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġload More () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġabstract Ġval Ġis Last Page : ĠBoolean ĊĠĠĠ Ġabstract Ġfun Ġload More () Ċ }