package Ġcom . gmail . e amos se . imdb . ui . movie details Ċ Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . gmail . e amos se . idb data . api . response . Discover Movie Ċ import Ġcom . gmail . e amos se . imdb . databinding . Movie Item Binding Ċ import Ġcom . gmail . e amos se . imdb . ui . extension . bind Post er Movie Ċ Ċ class ĠDetails Similar Movies Adapter ( private Ġval Ġitems : List < Discover Movie >): ĠRecyclerView . Adapter < Details Similar Movies Adapter . ViewHolder >() Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġlimit Ġ= Ġ 4 ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠDetails Similar Movies Adapter . ViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġinflater Ġ= ĠLayoutInflater . from ( parent . context ) ĊĠĠĠĠĠĠĠ Ġreturn ĠViewHolder ( Movie Item Binding . inflate ( in flater , Ġparent , Ġfalse )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠDetails Similar Movies Adapter . ViewHolder , Ġposition : ĠInt ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġmovie : ĠDis cover Movie Ġ= Ġitems [ position ] ĊĠĠĠĠĠĠĠ Ġholder . bind ( movie ) ĊĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= Ġholder . item View . context ĊĠĠĠĠĠĠĠ Ġmovie . poster Path ?. let Ġ{ Ġholder . binding . item List Post er . bind Post er Movie ( it , Ġcontext ) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġif ( items . size Ġ> Ġlimit ){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlimit ; ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġitems . size ; ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinner Ġclass ĠViewHolder ( val Ġbinding : ĠMovie Item Binding ) Ġ: ĠRecyclerView . ViewHolder ( binding . root ){ ĊĠĠĠĠĠĠĠ Ġfun Ġbind ( item : ĠDis cover Movie ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbinding . item Ġ= Ġitem ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }