package Ġcom . ki en ht . gap o . dashboard . menu . adapter . load more Ċ Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . lifecycle . Lifecycle Owner Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . ki en ht . gap o . core . utils . inflate ViewData Binding Ċ import Ġcom . ki en ht . gap o . dashboard . R Ċ import Ġcom . ki en ht . gap o . dashboard . databinding . Load more Item Binding Ċ import Ġcom . ki en ht . gap o . dashboard . news _ feeds . adapter . view holder . News Feed Base ViewHolder Ċ Ċ /** Ċ Ġ* Ġ@ author Ġvit Ċ Ġ*/ Ċ class ĠLoad more Adapter ( private Ġval Ġview Lifecycle Owner : ĠLifecycle Owner ) Ġ: ĊĠĠĠ ĠRecyclerView . Adapter < Load more Adapter . Load more ViewHolder >() Ġ{ ĊĊĠĠĠ Ġvar Ġloading Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġset ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen ( field ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Ġ-> Ġnotify Item Changed ( 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrue Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitems Count Ġ= Ġ 0 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnotify Item Removed ( 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfalse Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitems Count Ġ= Ġ 1 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnotify Item Inserted ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfield Ġ= Ġvalue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġprivate Ġvar Ġitems Count : ĠInt Ġ= Ġ 0 ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( ĊĠĠĠĠĠĠĠ Ġparent : ĠViewGroup , ĊĠĠĠĠĠĠĠ Ġview Type : ĠInt ĊĠĠĠ Ġ): ĠLoad more Adapter . Load more ViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠLoad more ViewHolder ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparent . inflate ViewData Binding ( view Type ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview Lifecycle Owner ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( ĊĠĠĠĠĠĠĠ Ġholder : ĠLoad more ViewHolder , ĊĠĠĠĠĠĠĠ Ġposition : ĠInt ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġholder . bind ( loading , Ġnull ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem ViewType ( position : ĠInt ): ĠInt Ġ= ĠR . layout . load more _ item ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ= Ġitems Count ĊĊĠĠĠ Ġinner Ġclass ĠLoad more ViewHolder ( ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġbinding : ĠLoad more Item Binding , ĊĠĠĠĠĠĠĠ Ġview Lifecycle Owner : ĠLifecycle Owner ĊĠĠĠ Ġ) Ġ: ĠNews Feed Base ViewHolder < Boolean >( binding , Ġview Lifecycle Owner ) Ġ{ ĊĊĠĠĠ Ġ} Ċ Ċ }