package Ġcom . int ew e ave . dynamic wizard . ui . wizard Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġcom . int ew e ave . dynamic wizard . R Ċ import Ġkotlinx . android . synt hetic . main . home _ fragment .* Ċ Ċ /** Ċ Ġ* ĠVery Ġsimple Ġfragment Ġto Ġstart Ġthe Ġwizard Ċ Ġ* Ċ Ġ* Ġ@ author ĠW ĠM ĠMil ward Ċ Ġ* ĠCopyright ĠÂ© Ġ 2 0 1 9 ĠInt ew e ave . ĠAll Ġrights Ġreserved . Ċ Ġ*/ Ċ class ĠHome Fragment Ġ: ĠFragment () Ġ{ ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠPretty Ġstandard Ġpattern Ġfor Ġa Ġfragment Ġinteraction Ġlistener ; ĊĠĠĠĠ Ġ* Ġset Ġin Ġon Attach Ġand Ġcleared Ġin Ġon Detach ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġinterface ĠListener Ġ{ ĊĠĠĠĠĠĠĠ Ġfun ĠonStart Wizard () ĊĠĠĠĠĠĠĠ Ġvar Ġis Enabled : ĠBoolean ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġvar Ġis Enabled : ĠBoolean ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġstart Wizard . isEnabled ĊĠĠĠĠĠĠĠ Ġset ( value ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstart Wizard . isEnabled Ġ= Ġvalue ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġvar Ġlistener : ĠListener ? Ġ= Ġnull ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠĠĠ Ġ* ĠFactory Ġmethod Ġto Ġcreate Ġan Ġinstance Ġof Ġthis Ġfragment ĊĠĠĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠĠĠ Ġfun Ġnew Instance () Ġ= ĠHome Fragment () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , ĊĠĠĠĠĠĠĠ Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġinflater . inflate ( R . layout . home _ fragment , Ġcontainer , Ġfalse ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on View Created ( view , ĠsavedInstanceState ) ĊĠĠĠĠĠĠĠ Ġstart Wizard . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlistener ?. onStart Wizard () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ( savedInstanceState Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstart Wizard . isEnabled Ġ= Ġlistener ?. isEnabled Ġ?: Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠGet Ġa Ġreference Ġto Ġthe Ġfragment Ġinteraction Ġlistener ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġoverride Ġfun Ġon Attach ( context : ĠContext ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Attach ( context ) ĊĠĠĠĠĠĠĠ Ġif Ġ( context Ġis ĠListener ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlistener Ġ= Ġcontext ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠRuntimeException ("$ context Ġmust Ġimplement ĠHome Fragment . Listener ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠClear Ġthe Ġreference Ġto Ġthe Ġfragment Ġinteraction Ġlistener ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġoverride Ġfun Ġon Detach () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Detach () ĊĠĠĠĠĠĠĠ Ġlistener Ġ= Ġnull ĊĠĠĠ Ġ} Ċ } Ċ