/* Ċ Ġ* ĠCopyright Ġ 2 0 1 7 ĠM ig uel ĠCast ib lan co Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ package Ġcom . star c arr lane . coroutines . ui . adapter Ċ Ċ 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 . star c arr lane . coroutines . network . Post Ċ import Ġcor outines . R Ċ Ċ /** Ċ Ġ* ĠSample Ġadapter , Ġshows Ġthe Ġposts Ġand Ġnot ifies Ġwhen Ġan Ġitem Ġis Ġclicked Ċ Ġ* ĠCreated Ġby Ġmac ast ib lan cot Ġon Ġ 2 / 1 3 / 1 7 . Ċ Ġ*/ Ċ class ĠPosts Adapter ( var Ġposts Ġ: ĠList < Post > Ġ= ĠArrayList < Post >(), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlistener : ĠPost ClickListener ) Ġ: ĠRecyclerView . Adapter < Post ViewHolder > (){ ĊĊĠĠĠ Ġfun Ġset Elements ( elements Ġ: ĠList < Post > ){ ĊĠĠĠĠĠĠĠ Ġposts Ġ= Ġelements ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠPost ViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpost Ġ= Ġposts [ position ] ĊĠĠĠĠĠĠĠ Ġholder . title . text Ġ= Ġpost . title ĊĠĠĠĠĠĠĠ Ġholder . body . text Ġ= Ġpost . body ĊĠĠĠĠĠĠĠ Ġholder . view . setOnClickListener Ġ{ Ġlistener . on Post Clicked ( post ) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠPost ViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= ĠLayoutInflater . from ( parent . context ). inflate ( R . layout . post _ item , Ġparent , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġreturn ĠPost ViewHolder ( view , Ġview . findViewById ( R . id . title ) Ġas ĠTextView , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġview . findViewById ( R . id . body ) Ġas ĠTextView ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġposts . size ĊĠĠĠ Ġ} ĊĊ Ċ } Ċ Ċ interface ĠPost ClickListener { ĊĠĠĠ Ġfun Ġon Post Clicked ( post Ġ: ĠPost ) Ċ } Ċ Ċ class ĠPost ViewHolder ( val Ġview : ĠView , Ġval Ġtitle Ġ: ĠTextView , Ġval Ġbody : ĠTextView ) Ġ: ĠRecyclerView . ViewHolder ( view ) Ċ