package Ġcom . hu anch eng fly . ti eba . post . components Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . graphics . drawable . Drawable Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . View . On Long ClickListener Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . ImageView Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . annotation . Drawable Res Ċ import Ġandroidx . annotation . Id Res Ċ import Ġandroidx . annotation . Layout Res Ċ import Ġandroidx . annotation . String Res Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ Ċ class ĠMy ViewHolder ( item View : ĠView ) Ġ: ĠRecyclerView . ViewHolder ( item View ) Ġ{ ĊĠĠĠ Ġprivate Ġval ĠmContext : ĠContext Ġ= ĠitemView . context ĊĊĠĠĠ Ġ@ Jvm Over loads ĊĠĠĠ Ġconstructor ( context : ĠContext , Ġ@ Layout Res Ġlayout Id : ĠInt , Ġparent : ĠViewGroup ? Ġ= Ġnull ) Ġ: Ġthis ( ĊĠĠĠĠĠĠĠ ĠLayoutInflater . from ( context ). inflate ( layout Id , Ġparent , Ġfalse ) ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġfun Ġ< T Ġ: ĠView > Ġget View (@ Id Res Ġid : ĠInt ): ĠT Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠitemView . findViewById ( id ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġ< T Ġ: ĠView > Ġget View OrNull (@ Id Res Ġid : ĠInt ): ĠT ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠitemView . findViewById ( id ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Item OnClickListener ( listener : ĠView . OnClickListener ?) Ġ{ ĊĠĠĠĠĠĠĠ ĠitemView . setOnClickListener ( listener ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Item On Long ClickListener ( listener : ĠOn Long ClickListener ?) Ġ{ ĊĠĠĠĠĠĠĠ ĠitemView . setOn Long ClickListener ( listener ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset OnClickListener ( id : ĠInt , ĠonClick Listener : ĠView . OnClickListener ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= Ġget View < View >( id ) ĊĠĠĠĠĠĠĠ Ġview . setOnClickListener ( on ClickListener ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Text (@ Id Res Ġid : ĠInt , Ġtext : ĠCharSequence ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= Ġget View < View >( id ) ĊĠĠĠĠĠĠĠ Ġif Ġ( view Ġis ĠTextView ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġview . text Ġ= Ġtext ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Visibility ( id : ĠInt , Ġvisibility : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= Ġget View < View >( id ) ĊĠĠĠĠĠĠĠ Ġview . visibility Ġ= Ġvisibility ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Jvm Over loads ĊĠĠĠ Ġfun Ġset Visibility ( id : ĠInt , Ġvisibility : ĠBoolean , Ġgone : ĠBoolean Ġ= Ġtrue ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= Ġget View < View >( id ) ĊĠĠĠĠĠĠĠ Ġview . visibility Ġ= Ġif Ġ( visibility ) ĠView . VISIBLE Ġelse Ġif Ġ( g one ) ĠView . GONE Ġelse ĠView . IN VISIBLE ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Text (@ Id Res Ġid : ĠInt , Ġ@ String Res Ġstring : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġset Text ( id , ĠmContext . getString ( string )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Image Drawable (@ Id Res Ġid : ĠInt , Ġdrawable : ĠDrawable ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġget View < ImageView >( id ). setImage Drawable ( drawable ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Image Resource (@ Id Res Ġid : ĠInt , Ġ@ Drawable Res Ġdrawable Res : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġget View < ImageView >( id ). setImage Resource ( drawable Res ) ĊĠĠĠ Ġ} Ċ }