package Ġcom . p ist ach io . smart gard ening . ui . adapter Ċ Ċ import Ġandroid . content . Intent Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . bump tech . glide . G lide Ċ import Ġcom . p ist ach io . smart gard ening . data . entity . Plant Entity Ċ import Ġcom . p ist ach io . smart gard ening . databinding . ItemList Plant Binding Ċ import Ġcom . p ist ach io . smart gard ening . ui . detail . Detail Activity Ċ import Ġjava . io . File Ċ import Ġjava . util . ArrayList Ċ Ċ class ĠPl ant Adapter Ġ: ĠRecyclerView . Adapter < Plant Adapter . Plant ViewHolder >() Ġ{ ĊĠĠĠ Ġprivate Ġvar Ġlist Pl ants Ġ= ĠArrayList < Plant Entity >() ĊĊĠĠĠ Ġfun Ġset Pl ants ( pl ants : ĠList < Plant Entity > ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( pl ants Ġ== Ġnull ) Ġreturn ĊĠĠĠĠĠĠĠ Ġthis . list Pl ants . clear () ĊĠĠĠĠĠĠĠ Ġthis . list Pl ants . addAll ( pl ants ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠPl ant ViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġitems Plant Binding Ġ= ĠItem List Plant Binding . inflate ( LayoutInflater . from ( parent . context ), Ġparent , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġreturn ĠPl ant ViewHolder ( items Plant Binding ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠPl ant ViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġplant Ġ= Ġlist Pl ants [ position ] ĊĠĠĠĠĠĠĠ Ġholder . bind ( plant ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ= Ġlist Pl ants . size ĊĊĊĠĠĠ Ġclass ĠPl ant ViewHolder ( private Ġval Ġbinding : ĠItem List Plant Binding ) Ġ: ĠRecyclerView . ViewHolder ( binding . root ) Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġbind ( plant Entity : ĠPl ant Entity ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwith ( binding ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtxt Plant Name . text Ġ= Ġplant Entity . name ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtxt Plant Location . text Ġ= Ġplant Entity . location ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtxt Date Image Taken . text Ġ= Ġplant Entity . date ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġimg File Ġ= ĠFile ( plant Entity . image Path ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( img File . exists ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠG lide . with ( item View . context ). load ( img File ). into ( img Item Photo ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠitemView . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( item View . context , ĠDetail Activity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġintent . putExtra ( Detail Activity . EXTRA _ PL ANT , Ġplant Entity ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġintent . putExtra ( Detail Activity . EXTRA _ STATUS , Ġ 2 0 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠitemView . context . startActivity ( intent ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }