package Ġcom . mo lo 1 7 . dam ian og i ust i . kotlin native p oc . users Ċ Ċ import Ġandroid . support . v 7 . widget . RecyclerView Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . ImageView Ċ import Ġandroid . widget . TextView Ċ import Ġcom . mo lo 1 7 . dam ian og i ust i . kotlin native p oc . R Ċ import Ġcom . mo lo 1 7 . dam ian og i ust i . ui . users . Ui User Ċ import Ġcom . squareup . pic asso . Pic asso Ċ import Ġkotlin . properties . Deleg ates Ċ Ċ /** Ċ Ġ* ĠCreated Ġby ĠD am iano ĠG i ust i Ġon Ġ 0 1 / 0 2 / 1 9 . Ċ Ġ*/ Ċ class ĠUser ListAdapter Ġ: ĠRecyclerView . Adapter < User ListView Holder >() Ġ{ ĊĊĠĠĠ Ġvar Ġdataset Ġby ĠDeleg ates . observable ( emptyList < Ui User >()) Ġ{ Ġ_, Ġ_, Ġ_ Ġ-> Ġnotify DataSet Changed () Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ= Ġdataset . count () ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġposition : ĠInt ): ĠUser ListView Holder Ġ= ĊĠĠĠĠĠĠĠ ĠLayoutInflater . from ( parent . context ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. inflate ( R . layout . user _ list _ cell , Ġparent , Ġfalse ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. let (:: User ListView Holder ) ĊĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠUser ListView Holder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġitem Ġ= Ġdataset [ position ] ĊĠĠĠĠĠĠĠ Ġholder . userName TextView . text Ġ= Ġitem . displayName ĊĠĠĠĠĠĠĠ Ġholder . email TextView . text Ġ= Ġitem . email ĊĠĠĠĠĠĠĠ ĠPic asso . get (). load ( item . picture Url ). into ( holder . pic ImageView ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ class ĠUser ListView Holder ( item View : ĠView ) Ġ: ĠRecyclerView . ViewHolder ( item View ) Ġ{ ĊĠĠĠ Ġval Ġpic ImageView : ĠImageView Ġ= ĠitemView . findViewById ( R . id . profile _ pic _ image _ view ) ĊĠĠĠ Ġval ĠuserName TextView : ĠTextView Ġ= ĠitemView . findViewById ( R . id . username _ text _ view ) ĊĠĠĠ Ġval Ġemail TextView : ĠTextView Ġ= ĠitemView . findViewById ( R . id . email _ text _ view ) Ċ }