package Ġcom . u iza . sample player . ui . player list Ċ Ċ import Ġandroid . annotation . Suppress Lint Ċ import Ġandroid . graphics . Color Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . u iza . sample player . R Ċ import Ġkotlinx . android . synt hetic . main . view _ item _ player _ list . view .* Ċ Ċ class ĠPlayer ListAdapter ( private Ġval Ġlist : ĠList < Item >) Ġ: ĊĠĠĠ ĠRecyclerView . Adapter < RecyclerView . ViewHolder >() Ġ{ ĊĊĠĠĠ Ġvar ĠonClick Item : Ġ(( index : ĠInt , Ġitem : ĠItem ) Ġ-> ĠUnit )? Ġ= Ġnull ĊĊĠĠĠ Ġinner Ġclass ĠMy ViewHolder ( view : ĠView ) Ġ: ĠRecyclerView . ViewHolder ( view ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ@ Suppress Lint (" SetText I 1 8 n ") ĊĠĠĠĠĠĠĠ Ġfun Ġbind ( item : ĠItem ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠitemView . tv Name . text Ġ= Ġitem . uz Playback ?. name ĊĠĠĠĠĠĠĠĠĠĠĠ ĠitemView . tv Ad . text Ġ= Ġ" url I MA Ad : Ġ${ item . uz Playback ?. url I MA Ad }" ĊĠĠĠĠĠĠĠĠĠĠĠ ĠitemView . tv Is Por trait . text Ġ= Ġ" is Por trait Video Ġ${ item . uz Playback ?. is Por trait Video }" ĊĠĠĠĠĠĠĠĠĠĠĠ ĠitemView . tv Post er . text Ġ= Ġ" poster Ġ${ item . uz Playback ?. poster }" ĊĠĠĠĠĠĠĠĠĠĠĠ ĠitemView . tv Link Play . text Ġ= Ġ" link Play Ġ${ item . uz Playback ?. link Play }" ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( item . is Playing ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠitemView . linear Layout . set BackgroundColor ( Color . GREEN ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠitemView . linear Layout . set BackgroundColor ( Color . WHITE ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠitemView . card View . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠonClick Item ?. invoke ( binding Adapter Position , Ġitem ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠMy ViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠitemView Ġ= ĠLayoutInflater . from ( parent . context ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. inflate ( R . layout . view _ item _ player _ list , Ġparent , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġreturn ĠMy ViewHolder ( item View ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġlist . size ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠRecyclerView . ViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( holder Ġis ĠMy ViewHolder ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmovie Ġ= Ġlist [ position ] ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . bind ( movie ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ