package Ġcom . mv k . news . ui . home . adapter Ċ Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . lifecycle . Lifecycle Ċ import Ġcom . mv k . news . R Ċ import Ġcom . mv k . news . data . model . News Category Ċ import Ġcom . mv k . news . ui . base . Base Adapter Ċ import Ġkotlinx . android . synt hetic . main . item _ view _ news _ category . view .* Ċ Ċ class ĠNews Category Adapter ( ĊĠĠĠĠĠĠĠ Ġparent Lifecycle : ĠLifecycle , ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġposts : ĠArrayList < News Category > Ċ ) Ġ: ĠBase Adapter < News Category , ĠNews Category Item ViewHolder >( parent Lifecycle , Ġposts ) Ġ{ ĊĊĠĠĠ Ġ// ĠIndex Ġof Ġthe Ġselected Ġnews Ġcategory ĊĠĠĠ Ġprivate Ġvar ĠrowIndex Ġ= Ġ 0 ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ) Ġ= ĠNews Category Item ViewHolder ( parent ) ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠNews Category Item ViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Bind ViewHolder ( holder , Ġposition ) ĊĠĠĠĠĠĠĠ Ġ// ĠNews Ġcategory Ġclick Ġlistener ĊĠĠĠĠĠĠĠ Ġholder . item View . tv Category Name . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠrowIndex Ġ= Ġposition ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . refresh News Feed () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnotify DataSet Changed () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ// ĠSet Ġthe Ġbackground Ġcolor Ġfor Ġthe Ġselected Ġcategory ĊĠĠĠĠĠĠĠ Ġif Ġ( rowIndex Ġ== Ġposition ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= Ġholder . item View . tv Category Name . context ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . item View . tv Category Name . setTextColor ( context . getColor ( R . color . white )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . item View . tv Category Name . set BackgroundColor ( context . getColor ( R . color . black )) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= Ġholder . item View . tv Category Name . context ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . item View . tv Category Name . setTextColor ( context . getColor ( R . color . black )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . item View . tv Category Name . set BackgroundColor ( context . getColor ( R . color . white )) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠClear Ġnews Ġcategory Ġselection ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġfun Ġclear Selection () Ġ{ ĊĠĠĠĠĠĠĠ ĠrowIndex Ġ= Ġ- 1 ĊĠĠĠĠĠĠĠ Ġnotify DataSet Changed () ĊĠĠĠ Ġ} Ċ }