package Ġcom . sof vision . k mp . presentation Ċ Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . recyclerview . widget . Diff Util Ċ import Ġandroidx . recyclerview . widget . ListAdapter Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . sof vision . k mp . R Ċ import Ġcom . sof vision . k mp . mobile . domain . entities . Jo ke Ċ Ċ class ĠJ okes ListAdapter Ġ: ĠList Adapter < Jo ke , ĠRecyclerView . ViewHolder >( ĊĠĠĠ Ġobject Ġ: ĠDiff Util . Item Callback < Jo ke >() Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġare Items The Same ( old Item : ĠJo ke , Ġnew Item : ĠJo ke ) Ġ= Ġold Item . id Ġ== Ġnew Item . id ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġare Contents The Same ( old Item : ĠJo ke , Ġnew Item : ĠJo ke ) Ġ= Ġold Item Ġ== Ġnew Item ĊĠĠĠ Ġ} Ċ ) Ġ{ ĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠRecyclerView . ViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= ĠLayoutInflater ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. from ( parent . context ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. inflate ( R . layout . list _ item _ jo ke , Ġparent , Ġfalse ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġobject Ġ: ĠRecyclerView . ViewHolder ( view ) Ġ{} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠRecyclerView . ViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġjo ke Ġ= ĠgetItem ( position ) ĊĊĠĠĠĠĠĠĠ Ġholder . item View . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtxt Setup Ġ= ĠfindViewById < TextView >( R . id . txt _ setup ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtxt P unch line Ġ= ĠfindViewById < TextView >( R . id . txt _ p unch line ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġtxt Setup . text Ġ= Ġjo ke . setup ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtxt P unch line . text Ġ= Ġjo ke . p unch line ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtxt P unch line . visibility Ġ= Ġif Ġ( jo ke . is P unch line Visible ) ĠView . VISIBLE Ġelse ĠView . IN VISIBLE ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġset OnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġjo ke . is P unch line Visible Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtxt P unch line . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ }