package Ġcom . sam ru dd hi . mv vm architecture li ved ata ret rofit paging Ċ Ċ import Ġandroid . annotation . Suppress Lint Ċ import Ġandroid . content . Context Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . ImageView Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . bump tech . glide . G lide Ċ import Ġcom . sam ru dd hi . mv vm architecture li ved ata ret rofit paging . model . Rest aurants DataList Ċ Ċ class ĠRest aurants Adapter Ġ: ĠRecyclerView . Adapter < Rest aurants Adapter . ViewHolder >() Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġrest aurants List Ġ= Ġmutable ListOf < Rest aurants DataList >() ĊĠĠĠ Ġprivate Ġvar ĠmContext : ĠContext ? Ġ= Ġnull ĊĊĠĠĠ Ġfun Ġset All Rest aurants Near By ( rest aurants DataList : ĠList < Rest aurants DataList >, Ġcontext : ĠContext ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . rest aurants List Ġ= Ġrest aurants DataList . to Mutable List () ĊĠĠĠĠĠĠĠ Ġthis . mContext Ġ= Ġcontext ĊĠĠĠĠĠĠĠ Ġnotify DataSet Changed () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġinflater Ġ= ĠLayoutInflater . from ( parent . context ) ĊĠĠĠĠĠĠĠ Ġval Ġview : ĠView Ġ= Ġinflater . inflate ( R . layout . adapter _ rest aurants , Ġparent , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġreturn ĠViewHolder ( view ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Suppress Lint (" SetText I 1 8 n ") ĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġrest aurants DataList Ġ= Ġrest aurants List [ position ] ĊĠĠĠĠĠĠĠ Ġval Ġrest aurants Ġ= Ġrest aurants DataList . restaurant ĊĠĠĠĠĠĠĠ Ġholder . name . text Ġ= Ġrest aurants . name ĊĠĠĠĠĠĠĠ Ġholder . tim ings . text Ġ= Ġ" Store ĠTim ings : Ġ" Ġ+ Ġrest aurants . tim ings ĊĠĠĠĠĠĠĠ Ġholder . cost For Two . text Ġ= Ġ" Avg ĠCost Ġfor ĠTwo : Ġ${ mContext !!. getString ( R . string . ru pe e _ symbol )} ${ rest aurants . average _ cost _ for _ two }" ĊĠĠĠĠĠĠĠ ĠG lide . with ( holder . item View . context ). load ( rest aurants . thumb ). into ( holder . imageView ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinner Ġclass ĠViewHolder ( view : ĠView ) Ġ: ĠRecyclerView . ViewHolder ( view ) Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġname : ĠTextView Ġ= Ġview . findViewById ( R . id . name ) ĊĠĠĠĠĠĠĠ Ġvar Ġtim ings : ĠTextView Ġ= Ġview . findViewById ( R . id . tim ings ) ĊĠĠĠĠĠĠĠ Ġvar Ġcost For Two : ĠTextView Ġ= Ġview . findViewById ( R . id . cost _ for _ two ) ĊĠĠĠĠĠĠĠ Ġvar ĠimageView : ĠImageView Ġ= Ġview . findViewById ( R . id . image _ view ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġrest aurants List . size ĊĠĠĠ Ġ} Ċ }