package Ġcom . exercise . weather demo . ui . place . adapter Ċ Ċ import Ġandroid . content . Intent Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . exercise . weather demo . R Ċ import Ġcom . exercise . weather demo . common . Common Object Ċ import Ġcom . exercise . weather demo . logic . model . Place Ċ import Ġcom . exercise . weather demo . ui . place . fragment . Place Fragment Ċ import Ġcom . exercise . weather demo . ui . weather . activity . Weather Activity Ċ import Ġkotlinx . android . synt hetic . main . activity _ weather .* Ċ Ċ class ĠPlace Adapter ( private Ġval Ġfragment : ĠPlace Fragment , Ġprivate Ġval Ġplace List : ĠList < Place >) Ġ: ĠRecyclerView . Adapter < Place Adapter . ViewHolder >() Ġ{ ĊĊĠĠĠ Ġinner Ġclass ĠViewHolder ( view : ĠView ) Ġ: ĠRecyclerView . ViewHolder ( view ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġplace Name : ĠTextView Ġ= Ġview . findViewById ( R . id . place Name ) ĊĠĠĠĠĠĠĠ Ġval Ġplace Address : ĠTextView Ġ= Ġview . findViewById ( R . id . place Address ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= ĠLayoutInflater . from ( parent . context ). inflate ( R . layout . place _ item , Ġparent , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġval Ġholder Ġ= ĠViewHolder ( view ) ĊĠĠĠĠĠĠĠ Ġholder . item View . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġposition Ġ= Ġholder . adapter Position ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġplace Ġ= Ġplace List [ position ] ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġactivity Ġ= Ġfragment . activity ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġplace Save List Ġ= Ġfragment . viewModel . get Place () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( activity Ġis ĠWeather Activity ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity . drawer Layout . close Draw ers () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity . viewModel . location Lng Ġ= Ġplace . location . lng ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity . viewModel . location Lat Ġ= Ġplace . location . lat ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity . viewModel . place Name Ġ= Ġplace . name ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġactivity . refresh Weather () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif ( Common Object . check Place Contains ( place Save List , Ġplace )== - 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġplace Save List . add ( place ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfragment . viewModel . save Place ( place Save List ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġholder ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġplace Ġ= Ġplace List [ position ] ĊĠĠĠĠĠĠĠ Ġholder . place Name . text Ġ= Ġplace . name ĊĠĠĠĠĠĠĠ Ġholder . place Address . text Ġ= Ġplace . address ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count () Ġ= Ġplace List . size Ċ }