package Ġio . keep coding . mad rid shops . adapter Ċ Ċ import Ġandroid . support . v 7 . widget . RecyclerView Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . ImageView Ċ import Ġandroid . widget . TextView Ċ import Ġcom . squareup . pic asso . Pic asso Ċ import Ġio . keep coding . mad rid shops . R Ċ import Ġio . keep coding . mad rid shops . domain . model . Shop Ċ Ċ class ĠCell RecyclerView Adapter ( val Ġ Ġelements Ġ: ĠList < Shop >): ĠRecyclerView . Adapter < Cell RecyclerView Adapter . Cell ViewHolder >() Ġ{ ĊĊĠĠĠ Ġvar ĠonClick Listener : ĠView . OnClickListener ? Ġ= Ġnull ĊĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup ?, Ġview Type : ĠInt ): ĠCell ViewHolder Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= ĠLayoutInflater . from ( parent ?. context ). inflate ( R . layout . content _ cell , Ġparent , Ġfalse ) ĊĊĠĠĠĠĠĠĠ Ġview . setOnClickListener ( on ClickListener ) ĊĊĠĠĠĠĠĠĠ Ġreturn ĠCell ViewHolder ( view ) ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ= Ġelements . size ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠCell ViewHolder ?, Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġholder ?. bind Shop ( elements [ position ]) ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġinner Ġclass ĠCell ViewHolder ( item View : ĠView ) Ġ: ĠRecyclerView . ViewHolder ( item View ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġimage Ġ= ĠitemView . findViewById < ImageView >( R . id . cell _ image ) ĊĠĠĠĠĠĠĠ Ġval Ġtext Ġ= ĠitemView . findViewById < TextView >( R . id . cell _ text ) ĊĊĠĠĠĠĠĠĠ Ġfun Ġbind Shop ( Ġshop : ĠShop ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= ĠitemView . context ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠPic asso . with ( context ). load ( shop . logo ). into ( image ); ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtext . text Ġ= Ġshop . name ĊĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} ĊĊĊĊĊ Ċ } Ċ