package Ġandroidx . ess entials . playground . home Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . View Ċ import Ġandroidx . activity . result . contract . Activity Result Contract Ċ import Ġandroidx . ess entials . activity . Navigation Activity Ċ import Ġandroidx . ess entials . events . Events . subscribe Ċ import Ġandroidx . ess entials . playground . Preference Ċ import Ġandroidx . ess entials . playground . R Ċ import Ġandroidx . ess entials . playground . databinding . Activity Home Binding Ċ import Ġandroidx . ess entials . preferences . SharedPreferences . put Ċ import Ġandroidx . navigation . ui . AppBar Configuration Ċ import Ġandroidx . navigation . ui . setup ActionBar With Nav Controller Ċ import Ġandroidx . navigation . ui . setup With Nav Controller Ċ Ċ class ĠHome Activity Ġ: ĠNavigation Activity () Ġ{ ĊĊĠĠĠ Ġoverride Ġval Ġlayout Ġ= ĠR . layout . activity _ home ĊĠĠĠ Ġoverride Ġval Ġnav Host Fragment Id Ġ= ĠR . id . play Ground Navigation ĊĠĠĠ Ġoverride Ġval Ġapp Bar Configuration Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠApp Bar Configuration ( nav Controller . graph , Ġbinding . drawer Layout ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġoverride Ġval Ġbinding Ġby Ġdata Binding < Activity Home Binding >() ĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on View Created ( view , ĠsavedInstanceState ) ĊĠĠĠĠĠĠĠ Ġbinding . navigation View . setup With Nav Controller ( nav Controller ) ĊĠĠĠĠĠĠĠ Ġsetup ActionBar With Nav Controller ( nav Controller , Ġapp Bar Configuration ) Ċ // ĠĠĠĠĠĠĠ Ġget < Int >( Preference . DEST INATION )?. let Ġ{ Ġnavigate ( it ) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinit Observer s () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . init Observer s () ĊĠĠĠĠĠĠĠ Ġsubscribe < Int > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( navigate ( it )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġput ( Preference . DEST INATION , Ġit ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ: ĠActivity Result Contract < Any ?, ĠBoolean >() Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġcreate Intent ( context : ĠContext , Ġinput : ĠAny ?): ĠIntent Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠIntent ( context , ĠHome Activity :: class . java ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġparse Result ( result Code : ĠInt , Ġintent : ĠIntent ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠresultCode Ġ== ĠRESULT _ OK ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} Ċ Ċ } Ċ