package Ġcom . project . val hall ast udio . star w ars . adapters . resources Ċ Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . ImageView Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . paging . Paged ListAdapter Ċ import Ġandroidx . recyclerview . widget . Diff Util Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . bump tech . glide . G lide Ċ import Ġcom . project . val hall ast udio . star w ars . R Ċ import Ġcom . project . val hall ast udio . star w ars . models . response models . Film Response Ċ import Ġcom . project . val hall ast udio . star w ars . models . response models . Response Ċ import Ġcom . project . val hall ast udio . star w ars . models . response models . Veh icles Response Ċ Ċ /** Ċ Ġ* Ġ@ author Ġro bin Ċ Ġ* ĠCreated Ġon Ġ 6 / 3 / 2 0 Ċ Ġ*/ Ċ class ĠV eh icles Adapter : ĊĠĠĠ ĠP aged ListAdapter < ĠV eh icles Response , ĠV eh icles Adapter . ViewHolder >( ĊĠĠĠĠĠĠĠ Ġobject : ĠDiff Util . Item Callback < Veh icles Response > Ġ(){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġare Items The Same ( old Item : ĠV eh icles Response , Ġnew Item : ĠV eh icles Response ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġold Item . url Ġ== Ġnew Item . url ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġare Contents The Same ( old Item : ĠV eh icles Response , Ġnew Item : ĠV eh icles Response ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġold Item . name Ġ== Ġnew Item . name ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ) Ġ{ ĊĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠViewHolder ( LayoutInflater . from ( parent . context ). inflate ( R . layout . item , Ġparent , Ġfalse )) ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresponse : ĠResponse ? Ġ= ĠgetItem ( position ); ĊĠĠĠĠĠĠĠ Ġif Ġ( response Ġ!= Ġnull ){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . bind ( response , Ġposition ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġclass ĠViewHolder ( item View : ĠView ) Ġ: ĠRecyclerView . ViewHolder ( item View ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġfun Ġbind ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġitem : ĠResponse , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġposition : ĠInt ĊĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġitem Image Ġ= ĠitemView . findViewById < ImageView >( R . id . item Image ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġitem Text Ġ= ĠitemView . findViewById < TextView >( R . id . item Title ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġitem Image . setImage Resource ( R . drawable . dp ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġitem Text . text Ġ= Ġitem . name ĊĠĠĠĠĠĠĠĠĠĠĠ ĠG lide . with ( item View . context ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwhen ( position ){ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 0 Ġ-> Ġload (" https :// star w ars - visual guide . com / assets / img / vehicles / 4 . jpg ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 1 Ġ-> Ġload (" https :// star w ars - visual guide . com / assets / img / vehicles / 6 . jpg ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 2 Ġ-> Ġload (" https :// star w ars - visual guide . com / assets / img / vehicles / 7 . jpg ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 3 Ġ-> Ġload (" https :// star w ars - visual guide . com / assets / img / vehicles / 8 . jpg ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 4 Ġ-> Ġload (" https :// star w ars - visual guide . com / assets / img / vehicles / 1 4 . jpg ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 5 Ġ-> Ġload (" https :// star w ars - visual guide . com / assets / img / vehicles / 1 6 . jpg ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 6 Ġ-> Ġload (" https :// star w ars - visual guide . com / assets / img / vehicles / 1 8 . jpg ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 7 Ġ-> Ġload (" https :// star w ars - visual guide . com / assets / img / vehicles / 1 9 . jpg ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 8 Ġ-> Ġload (" https :// star w ars - visual guide . com / assets / img / vehicles / 2 0 . jpg ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 9 Ġ-> Ġload (" https :// star w ars - visual guide . com / assets / img / vehicles / 2 4 . jpg ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 1 0 Ġ-> Ġload (" https :// star w ars - visual guide . com / assets / img / vehicles / 2 5 . jpg ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 1 1 Ġ-> Ġload (" https :// star w ars - visual guide . com / assets / img / vehicles / 2 6 . jpg ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 1 2 Ġ-> Ġload (" https :// star w ars - visual guide . com / assets / img / vehicles / 3 0 . jpg ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 1 3 Ġ-> Ġload (" https :// star w ars - visual guide . com / assets / img / vehicles / 3 3 . jpg ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 1 4 Ġ-> Ġload (" https :// star w ars - visual guide . com / assets / img / vehicles / 3 4 . jpg ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 1 5 Ġ-> Ġload (" https :// star w ars - visual guide . com / assets / img / vehicles / 3 5 . jpg ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 1 6 Ġ-> Ġload (" https :// star w ars - visual guide . com / assets / img / vehicles / 3 6 . jpg ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 1 7 Ġ-> Ġload (" https :// star w ars - visual guide . com / assets / img / vehicles / 3 7 . jpg ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 1 8 Ġ-> Ġload (" https :// star w ars - visual guide . com / assets / img / vehicles / 3 8 . jpg ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 1 9 Ġ-> Ġload (" https :// star w ars - visual guide . com / assets / img / vehicles / 4 2 . jpg ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġload (( R . drawable . big _ placeholder )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. error ( R . drawable . big _ placeholder ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. override ( 3 5 0 , Ġ 4 0 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. into ( item Image ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }