package Ġio . rev an . delay Ċ Ċ import Ġandroid . graphics . drawable . Drawable Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . ImageView Ċ import Ġandroid . widget . TextView Ċ Ċ import Ġkotlinx . android . synt hetic . main . fragment _ choose _ app . view .* Ċ Ċ class ĠChoose App RecyclerView Adapter ( ĊĠĠĠ Ġprivate Ġval Ġm Values : ĠList < Installed App >, ĊĠĠĠ Ġprivate Ġval Ġm Listener : ĠChoose App Fragment . On List Fragment Interaction Listener ? Ċ ) Ġ: ĠRecyclerView . Adapter < Choose App RecyclerView Adapter . ViewHolder >() Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġm OnClickListener : ĠView . OnClickListener ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġm OnClickListener Ġ= ĠView . OnClickListener Ġ{ Ġv Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġitem Ġ= Ġv . tag Ġas ĠInstalled App ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm Listener ?. on List Fragment Interaction ( item ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= ĠLayoutInflater . from ( parent . context ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. inflate ( R . layout . fragment _ choose _ app , Ġparent , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġreturn ĠViewHolder ( view ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġitem Ġ= Ġm Values [ position ] ĊĠĠĠĠĠĠĠ Ġholder . m ContentView . text Ġ= Ġitem . name ĊĠĠĠĠĠĠĠ Ġholder . m Icon View . setImage Drawable ( item . icon ) ĊĊĠĠĠĠĠĠĠ Ġwith ( holder . m View ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtag Ġ= Ġitem ĊĠĠĠĠĠĠĠĠĠĠĠ Ġset OnClickListener ( m OnClickListener ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ= Ġm Values . size ĊĊĠĠĠ Ġinner Ġclass ĠViewHolder ( val Ġm View : ĠView ) Ġ: ĠRecyclerView . ViewHolder ( m View ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġm ContentView : ĠTextView Ġ= Ġm View . content ĊĠĠĠĠĠĠĠ Ġval Ġm Icon View : ĠImageView Ġ= Ġm View . icon ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠtoString (): ĠString Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġsuper . toString () Ġ+ Ġ" Ġ'" Ġ+ Ġm ContentView . text Ġ+ Ġ"'" ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ data Ġclass ĠInstalled App ( ĊĠĠĠ Ġval Ġpkg : ĠString , ĊĠĠĠ Ġval Ġcls : ĠString , ĊĠĠĠ Ġval Ġname : ĠString , ĊĠĠĠ Ġval Ġicon : ĠDrawable Ċ ) Ċ