package Ġdev . per cul a . rain y days . ui Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . appcompat . widget . Toolbar Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroidx . lifecycle . Observer Ċ import Ġandroidx . lifecycle . ViewModel Providers Ċ import Ġandroidx . navigation . fragment . nav Args Ċ import Ġandroidx . preference . Preference Manager Ċ import Ġandroidx . recyclerview . widget . Linear LayoutManager Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . per cul ac re ative . preference utils . library . boolean LiveData Ċ import Ġdev . per cul a . rain y days . R Ċ import Ġdev . per cul a . rain y days . core . mutable LiveData Of Ċ import Ġdev . per cul a . rain y days . view model . Rain Data ViewModel Ċ import Ġdev . per cul a . rain y days . view model . Rain Data ViewModel Factory Ċ Ċ class ĠDetail Fragment : ĠFragment () Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġargs Ġby Ġnav Args < Detail Fragment Args >() ĊĊĠĠĠ Ġprivate Ġval ĠviewModel Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfactory Ġ= ĠR ain Data ViewModel Factory ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġapplication Ġ= Ġactivity !!. application , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlocation Ġ= Ġargs . location ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠViewModel Providers . of ( this , Ġfactory ). get ( Rain Data ViewModel :: class . java ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġadapter : ĠR ain Data Adapter Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠR ain Data Adapter ( context ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPreference Manager . getDefault SharedPreferences ( it ). boolean LiveData ( it . getString ( R . string . units _ key ), Ġfalse ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ?: Ġmutable LiveData Of ( false )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( in flater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ?, ĠsavedInstanceState : ĠBundle ?): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġview Ġ= Ġinflater . inflate ( R . layout . fragment _ detail , Ġcontainer , Ġfalse ) ĊĊĠĠĠĠĠĠĠ Ġval Ġre cyclerView Ġ= Ġview . findViewById < RecyclerView >( R . id . recyclerview ) ĊĠĠĠĠĠĠĠ Ġre cyclerView . layout Manager Ġ= ĠLinearLayoutManager ( view . context ) ĊĠĠĠĠĠĠĠ Ġre cyclerView . adapter Ġ= Ġadapter ĊĊĠĠĠĠĠĠĠ ĠviewModel . rain List . observe ( view Lifecycle Owner , ĠObserver Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadapter . submit List ( it ) ĊĠĠĠĠĠĠĠ Ġ}) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġview ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĠĠĠĠĠĠĠ Ġview ?. root View ?. findViewById < Toolbar >( R . id . toolbar )?. title Ġ= Ġargs . location . name ĊĠĠĠ Ġ} Ċ }