package Ġcom . example . msg share app . adapter Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . Toast Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . example . msg share app . model . H obby Ċ import Ġcom . example . msg share app . R Ċ import Ġcom . example . msg share app . show Toast Ċ import Ġkotlinx . android . synt hetic . main . list _ item . view .* Ċ Ċ class ĠH obb ies Adapter ( Ġval Ġcontext : ĠContext , Ġ Ġprivate Ġval Ġh obb ies : ĠList < H obby >): ĠRecyclerView . Adapter < H obb ies Adapter . My ViewHolder >() Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject { ĊĠĠĠĠĠĠĠ Ġval ĠTag : ĠString Ġ= ĠH obb ies Adapter :: class . java . simple Name ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠMy ViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= Ġ ĠLayoutInflater . from ( context ). inflate ( R . layout . list _ item , Ġparent , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġreturn ĠMy ViewHolder ( view ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġh obb ies . size ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠMy ViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġh obby Ġ= Ġh obb ies [ position ] ĊĠĠĠĠĠĠĠ Ġholder . setData ( h obby , Ġposition ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinner Ġclass ĠMy ViewHolder ( item View : ĠView ) Ġ: ĠRecyclerView . ViewHolder ( item View ){ ĊĊĠĠĠĠĠĠĠ Ġvar Ġcurrent H obby : ĠH obby ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġvar Ġcurrent Position : ĠInt Ġ= Ġ 0 ĊĊĠĠĠĠĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠitemView . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcurrent H obby ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . show Toast ( current H obby !!. title Ġ+ Ġ" ĠClick ed Ġ! ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠitemView . img Share . setOnClickListener Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcurrent H obby ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmessage : ĠString Ġ= Ġ" You Ġcan Ġplan Ġfor Ġ" Ġ+ Ġcurrent H obby !!. title ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġintent . action Ġ= ĠIntent . ACTION _ SEND ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġintent . putExtra ( Intent . EXTRA _ TEXT , Ġmessage ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġintent . type Ġ= Ġ" text / plain " ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . startActivity ( Intent . create Chooser ( intent , Ġ" Please Ġselect Ġwhere Ġyou Ġwant Ġto Ġshare : Ġ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġfun ĠsetData ( h obby : ĠH obby ?, Ġpos : ĠInt ){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġh obby ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠitemView . tx v Title . text Ġ= Ġh obby . title ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . current H obby Ġ= Ġh obby ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . current Position Ġ= Ġpos ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }