package Ġcom . r yn k bit . co ffe est ore . management . customer . tablet Ċ Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . r yn k bit . co ffe est ore . R Ċ import Ġcom . r yn k bit . co ffe est ore . data . entity . Customer Ċ import Ġjava . text . NumberFormat Ċ Ċ class ĠManage Customer Adapter ( val ĠviewModel : ĠManage Customers ViewModel ): ĠRecyclerView . Adapter < Manage Customer ViewHolder >() Ġ{ ĊĠĠĠ Ġvar Ġcustomers : ĠList < Customer > Ġ= Ġmutable ListOf () ĊĠĠĠĠĠĠĠ Ġset ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfield Ġ= Ġvalue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnotify DataSet Changed () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠManage Customer ViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠManage Customer ViewHolder ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLayoutInflater . from ( parent . context ). inflate ( R . layout . item _ customer , Ġparent , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġcustomers . size ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠManage Customer ViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcustomer Ġ= Ġcustomers [ position ] ĊĠĠĠĠĠĠĠ Ġholder . txt Customer Name . text Ġ= Ġcustomer . name ĊĠĠĠĠĠĠĠ Ġholder . txt Customer Balance . text Ġ= ĠNumber Format . getC urrency Instance (). format ( customer . balance ) ĊĠĠĠĠĠĠĠ Ġholder . item View . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠviewModel . selected Customer . value Ġ= Ġcustomer ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ } Ċ Ċ class ĠManage Customer ViewHolder ( item View : ĠView ) Ġ: ĠRecyclerView . ViewHolder ( item View ) Ġ{ ĊĠĠĠ Ġval Ġtxt Customer Name : ĠTextView Ġ= ĠitemView . findViewById ( R . id . txt Transaction Customer Name ) ĊĠĠĠ Ġval Ġtxt Customer Balance : ĠTextView Ġ= ĠitemView . findViewById ( R . id . txt Customer Balance ) Ċ } Ċ