package Ġnet . or ion lab . android mv vm . sample . view Ċ Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . lifecycle . ViewModel Provider Ċ import Ġnet . or ion lab . android mv vm . Mv vm Fragment Ċ import Ġnet . or ion lab . android mv vm . sample . R Ċ import Ġnet . or ion lab . android mv vm . sample . databinding . First Fragment Binding Ċ import Ġnet . or ion lab . android mv vm . sample . viewModel . First ViewModel Ċ Ċ class ĠFirst Fragment Ġ: ĠM v vm Fragment < First Fragment Binding , ĠFirst ViewModel >() Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġget ActionBar Title (): ĠString ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġcontext ?. getString ( R . string . app _ name ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠMethod Ġimplemented Ġbecause Ġwe Ġneed ĠApplication Ġinstance Ġat ĠViewModel ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġoverride Ġfun Ġget ViewModel Factory (): ĠViewModel Provider . Factory ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠViewModel Provider . Android ViewModel Factory . getInstance ( activity !!. application ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget View Binding Instance ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , ĊĠĠĠĠĠĠĠ Ġcontainer : ĠViewGroup ? ĊĠĠĠ Ġ): ĠFirst Fragment Binding Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠFirst Fragment Binding . inflate ( in flater , Ġcontainer , Ġfalse ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget ViewModel Class (): ĠClass < First ViewModel > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠFirst ViewModel :: class . java ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon ViewModel Created ( is View Restore d : ĠBoolean ) Ġ{ ĊĠĠĠ Ġ} Ċ } Ċ