package Ġcom . anh vt . weather search . presentation . ui Ċ Ċ 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 . anh vt . weather search . R Ċ Ċ class ĠMain Adapter () Ġ: ĊĠĠĠ ĠList Adapter < Weather Details Ui , ĠMain Adapter . ViewHolder >( Diff Callback ()) Ġ{ ĊĠĠĠ Ġclass ĠViewHolder ( view : ĠView ) Ġ: ĠRecyclerView . ViewHolder ( view ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtv Date : ĠTextView Ġ= Ġview . findViewById ( R . id . tv _ date ) ĊĠĠĠĠĠĠĠ Ġval Ġtv Avg Tmp : ĠTextView Ġ= Ġview . findViewById ( R . id . tv _ avg _ temp ) ĊĠĠĠĠĠĠĠ Ġval Ġtv Pressure : ĠTextView Ġ= Ġview . findViewById ( R . id . tv _ pressure ) ĊĠĠĠĠĠĠĠ Ġval Ġtv Hum idity : ĠTextView Ġ= Ġview . findViewById ( R . id . tv _ humidity ) ĊĠĠĠĠĠĠĠ Ġval Ġtv Desc : ĠTextView Ġ= Ġview . findViewById ( R . id . tv _ desc ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġclass ĠDiff Callback Ġ: ĠDiff Util . Item Callback < Weather Details Ui >() Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġare Items The Same ( old Item : ĠWeather Details Ui , Ġnew Item : ĠWeather Details Ui ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġold Item Ġ== Ġnew Item ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġare Contents The Same ( old Item : ĠWeather Details Ui , Ġnew Item : ĠWeather Details Ui ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġold Item Ġ== Ġnew Item ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= ĠLayoutInflater . from ( parent . context ). inflate ( R . layout . item _ layout , Ġparent , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġreturn ĠViewHolder ( view ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġitem Ġ= ĠgetItem ( position ) ĊĠĠĠĠĠĠĠ Ġholder . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv Date . text Ġ= Ġ" Date : Ġ${ item . date }" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv Avg Tmp . text Ġ= Ġ" Average Ġtemperature : Ġ${ item . average Temp }" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv Pressure . text Ġ= Ġ" Pressure : Ġ${ item . pressure }" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv Hum idity . text Ġ= Ġ" Hud imity : Ġ${ item . humidity } %" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtv Desc . text Ġ= Ġ" Description : Ġ${ item . desc }" ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ } ĊĊ