package Ġcom . j pp . mp design . adapters Ċ Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ Ċ /** Ċ Ġ* ĠA Ġ[ RecyclerView . Adapter ] Ġthat Ġsimpl ifies Ġthe Ġimplementation Ġand Ġthe Ġpaging Ġmechanism Ċ Ġ* Ġby Ġmaintaining Ġan Ġinternal Ġlist Ġof Ġall Ġitems . Ċ Ġ*/ Ċ abstract Ġclass ĠMP RecyclerView Adapter < T , ĠR V Ġ: ĠRecyclerView . ViewHolder > Ġ: ĊĠĠĠ ĠRecyclerView . Adapter < RV >() Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġitem List Ġ= ĠArrayList < T >() ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ= Ġitem List . size ĊĊĠĠĠ Ġfun Ġsubmit List ( new Data : ĠList < T >) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcurrent Last Index Ġ= Ġitem List . size ĊĠĠĠĠĠĠĠ Ġitem List . clear () ĊĠĠĠĠĠĠĠ Ġitem List . addAll ( new Data ) ĊĠĠĠĠĠĠĠ Ġnotify Item Range Changed ( current Last Index , Ġitem List . size ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġclear List () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcurrent Last Index Ġ= Ġitem List . size ĊĠĠĠĠĠĠĠ Ġitem List . clear () ĊĠĠĠĠĠĠĠ Ġnotify Item Range Removed ( 0 , Ġcurrent Last Index ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠgetItem ( position : ĠInt ): ĠT Ġ= Ġitem List [ position ] Ċ } Ċ