package Ġcom . example . bol ly fil mes Ċ Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . Rating Bar Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ Ċ class ĠFil mes Adapter ( private Ġval Ġfil me List : ĠList < Item Fil me >) Ġ: ĠRecyclerView . Adapter < Fil mes Adapter . Fil mes ViewHolder >() Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject { ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠVIEW _ TYPE _ DEST A QUE Ġ= Ġ 0 ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠVIEW _ TYPE _ ITEM Ġ= Ġ 1 ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠFil mes ViewHolder ( item View : ĠView ) Ġ: ĠRecyclerView . ViewHolder ( item View ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġitem Title TextView : ĠTextView Ġ= ĠitemView . findViewById ( R . id . item Title TextView ) ĊĠĠĠĠĠĠĠ Ġval Ġitem Description TextView : ĠTextView Ġ= ĠitemView . findViewById ( R . id . item Description TextView ) ĊĠĠĠĠĠĠĠ Ġval Ġitem Date TextView : ĠTextView Ġ= ĠitemView . findViewById ( R . id . item Date TextView ) ĊĠĠĠĠĠĠĠ Ġval Ġitem A val iation R atin Bar : ĠRating Bar Ġ= ĠitemView . findViewById ( R . id . item A val iation R atin Bar ) ĊĊĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠFil mes ViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠitemView Ġ= ĠLayoutInflater . from ( parent . context ). inflate ( R . layout . item _ fil me , Ġparent , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġreturn ĠFil mes ViewHolder ( item View ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠFil mes ViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcurrent Item Ġ= Ġfil me List [ position ] ĊĊĠĠĠĠĠĠĠ Ġholder . item Title TextView . text Ġ= Ġcurrent Item . title ĊĠĠĠĠĠĠĠ Ġholder . item Description TextView . text Ġ= Ġcurrent Item . description ĊĠĠĠĠĠĠĠ Ġholder . item Date TextView . text Ġ= Ġcurrent Item . release Date ĊĠĠĠĠĠĠĠ Ġholder . item A val iation R atin Bar . rating Ġ= Ġcurrent Item . av ali ation . toFloat () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ= Ġfil me List . size ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem ViewType ( position : ĠInt ): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtype Ġ= Ġwhen Ġ( position ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠ 0 Ġ-> ĠVIEW _ TYPE _ DEST A QUE ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> ĠVIEW _ TYPE _ ITEM ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġtype ĊĠĠĠ Ġ} Ċ Ċ }