package Ġcom . example . jak ub ve ver ka . sport app . Adapters Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . support . v 7 . widget . Card View Ċ import Ġandroid . support . v 7 . widget . RecyclerView Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . TextView Ċ Ċ import Ġcom . example . jak ub ve ver ka . sport app . Entities . Event Ċ import Ġcom . example . jak ub ve ver ka . sport app . R Ċ import Ġcom . example . jak ub ve ver ka . sport app . ViewModels . Events Adapter ViewModel Ċ import Ġjava . util .* Ċ Ċ class ĠEvents RecyclerView Adapter ( val ĠmContext : ĠContext ) Ġ: ĠRecyclerView . Adapter < Events RecyclerView Adapter . ViewHolder >() Ġ{ ĊĊĠĠĠ Ġvar Ġm Values : ĠList < Event > Ġ= ĠLinkedList () ĊĠĠĠ Ġval Ġm ViewModel : ĠEvents Adapter ViewModel Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠEvents Adapter ViewModel ( mContext ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= ĠLayoutInflater . from ( parent . context ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. inflate ( R . layout . fragment _ events _ list _ item , Ġparent , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġreturn ĠViewHolder ( view ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġholder . m Item Ġ= Ġm Values [ position ] ĊĠĠĠĠĠĠĠ Ġholder . m Name TextView . text Ġ= Ġm Values [ position ]. name ĊĠĠĠĠĠĠĠ Ġholder . m Place TextView . text Ġ= Ġm Values [ position ]. place ĊĠĠĠĠĠĠĠ Ġholder . m StartTime TextView . text Ġ= Ġm ViewModel . format Date In Millis ( m Values [ position ]. startTime ) ĊĠĠĠĠĠĠĠ Ġholder . m EndTime TextView . text Ġ= Ġm ViewModel . format Date In Millis ( m Values [ position ]. endTime ) ĊĠĠĠĠĠĠĠ Ġholder . m Container . set Card BackgroundColor ( m ViewModel . get BackgroundColor For Event ( m Values [ position ])) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġm Values . size ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinner Ġclass ĠViewHolder ( val Ġm View : ĠView ) Ġ: ĠRecyclerView . ViewHolder ( m View ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġm Name TextView : ĠTextView ĊĠĠĠĠĠĠĠ Ġval Ġm Place TextView : ĠTextView ĊĠĠĠĠĠĠĠ Ġval Ġm StartTime TextView : ĠTextView ĊĠĠĠĠĠĠĠ Ġval Ġm EndTime TextView : ĠTextView ĊĠĠĠĠĠĠĠ Ġval Ġm Container : ĠCard View ĊĠĠĠĠĠĠĠ Ġvar Ġm Item : ĠEvent ? Ġ= Ġnull ĊĊĠĠĠĠĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm Name TextView Ġ= Ġm View . findViewById ( R . id . tw _ name ) Ġas ĠTextView ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm Place TextView Ġ= Ġm View . findViewById ( R . id . tw _ place ) Ġas ĠTextView ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm StartTime TextView Ġ= Ġm View . findViewById ( R . id . tw _ start _ time ) Ġas ĠTextView ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm EndTime TextView Ġ= Ġm View . findViewById ( R . id . tw _ end _ time ) Ġas ĠTextView ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm Container Ġ= Ġm View . findViewById ( R . id . events _ list _ item _ container ) Ġas ĠCard View ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġsuper . toString () Ġ+ Ġ" Ġ'" Ġ+ Ġm Name TextView . text Ġ+ Ġ"'" ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ