package Ġcom . i ap pt m . core app . adapters Ċ Ċ 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 . example . data . api . model . Movie Model Ċ import Ġcom . i ap pt m . core app . R Ċ import Ġkotlinx . android . synt hetic . main . row _ movie . view .* Ċ import Ġjava . math . Round ingMode Ċ Ċ class ĠMov ies Adapters ( private Ġval Ġmovie Clicked Listener : Ġ( Movie Model ) Ġ-> ĠUnit ) Ġ: ĊĠĠĠ ĠRecyclerView . Adapter < Movies Adapters . Holder >() Ġ{ ĊĠĠĠ Ġprivate Ġvar Ġmovies : ĠMutable List < Movie Model > Ġ= ĠArrayList () ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠH older Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠH older ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLayoutInflater . from ( parent . context ). inflate ( R . layout . row _ movie , Ġparent , Ġfalse ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmovie Clicked Listener ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġsubmit List ( movie List : ĠList < Movie Model >) Ġ{ ĊĠĠĠĠĠĠĠ Ġmovies . addAll ( movie List ) ĊĠĠĠĠĠĠĠ Ġnotify DataSet Changed () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count () Ġ= Ġmovies . size ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠH older , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmovie : ĠMovie Model Ġ= Ġmovies [ position ] ĊĠĠĠĠĠĠĠ Ġholder . movie Model Ġ= Ġmovie ĊĠĠĠĠĠĠĠ Ġholder . tv Title . text Ġ= Ġmovie . title ĊĠĠĠĠĠĠĠ Ġholder . tv Description . text Ġ= Ġmovie . story line ĊĠĠĠĠĠĠĠ Ġholder . tv Rate . text Ġ= Ġmovie . run Ġ{ Ġratings . average (). to BigDecimal (). set Scale ( 1 , Round ingMode . HALF _ E VEN ). toString () Ġ} ĊĊĠĠĠĠĠĠĠ ĠG lide . with ( holder . img ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. load ( movie . poster url ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. into ( holder . img ) ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġclass ĠH older ( item View : ĠView , Ġprivate Ġval Ġmovie Clicked Listener : Ġ( Movie Model ) Ġ-> ĠUnit ) Ġ: ĊĠĠĠĠĠĠĠ ĠRecyclerView . ViewHolder ( item View ) Ġ{ ĊĠĠĠĠĠĠĠ Ġlateinit Ġvar Ġmovie Model : ĠMovie Model ĊĊĠĠĠĠĠĠĠ Ġval Ġtv Title : ĠTextView Ġ= ĠitemView . tv _ title ĊĠĠĠĠĠĠĠ Ġval Ġtv Description : ĠTextView Ġ= ĠitemView . tv _ description ĊĠĠĠĠĠĠĠ Ġval Ġtv Rate : ĠTextView Ġ= ĠitemView . tv _ rate ĊĠĠĠĠĠĠĠ Ġval Ġimg : ĠImageView Ġ= ĠitemView . iv _ image ĊĊĠĠĠĠĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠitemView . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmovie Clicked Listener ( movie Model ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} Ċ Ċ }