package Ġd mit ry . zh uch kov . feature . mv vm . ui Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroidx . lifecycle . Observer Ċ import Ġd mit ry . zh uch kov . feature . mv vm . R Ċ import Ġd mit ry . zh uch kov . feature . mv vm . di . D agger Feature Component Ċ import Ġd mit ry . zh uch kov . feature . mv vm . di . Feature Component Ċ import Ġd mit ry . zh uch kov . feature . mv vm . di . Feature Mv vm Dependencies Ċ import Ġd mit ry . zh uch kov . feature . mv vm . presentation . Feature ViewModel Ċ import Ġkotlinx . android . synt hetic . main . mv vm _ fragment .* Ċ import Ġjavax . inject . Inject Ċ Ċ /** Ċ Ġ* ĠCreated Ġby ĠD mit ri i Ġon Ġ 3 0 . 0 9 . 2 0 2 0 Ċ Ġ* Ċ Ġ*/ Ċ class ĠM v vm Fragment Ġ: ĠFragment () Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġcomponent : ĠFeature Component Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠD agger Feature Component ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. factory () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. create (( require Activity (). application Ġas ĠFeature Mv vm Dependencies . Feature Mv vm Dep Provider ). get ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Inject ĊĠĠĠ Ġlateinit Ġvar ĠviewModel : ĠFeature ViewModel ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , ĊĠĠĠĠĠĠĠ Ġcontainer : ĠViewGroup ?, ĊĠĠĠĠĠĠĠ ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView ? Ġ= ĊĠĠĠĠĠĠĠ Ġsuper . onCreate View ( in flater , Ġcontainer , ĠsavedInstanceState ). let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinflater . inflate ( R . layout . mv vm _ fragment , Ġcontainer , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġcomponent . inject ( this ) ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on View Created ( view , ĠsavedInstanceState ) ĊĊĠĠĠĠĠĠĠ ĠviewModel . view State . observe ( this , ĠObserver Ġ{ Ġstate Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdisplayed Text . text Ġ= Ġstate . display Text ĊĠĠĠĠĠĠĠ Ġ}) ĊĊĠĠĠĠĠĠĠ Ġinit Listeners () ĊĊĠĠĠĠĠĠĠ ĠviewModel . load Screen Text () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit Listeners () Ġ{ ĊĠĠĠĠĠĠĠ Ġback Button . setOnClickListener Ġ{ ĠviewModel . navigate Back () Ġ} ĊĠĠĠ Ġ} Ċ }