package Ġapp . future d . ark ite kt . sample . ui . login . activity Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġapp . future d . ark ite kt . sample . R Ċ import Ġapp . future d . ark ite kt . sample . databinding . Activity Login Binding Ċ import Ġapp . future d . ark ite kt . sample . tools . Toast Creator Ċ import Ġapp . future d . ark ite kt . sample . ui . base . Base Activity Ċ import Ġapp . future d . ark ite kt . sample . ui . login . fragment . Login Fragment Ċ import Ġjavax . inject . Inject Ċ Ċ class ĠLogin Activity Ġ: ĠBase Activity < Login ViewModel , ĠLogin ViewState , ĠActivity Login Binding >(), ĠLogin View Ġ{ ĊĊĠĠĠ Ġ@ Inject Ġoverride Ġlateinit Ġvar ĠviewModel Factory : ĠLogin ViewModel Factory ĊĠĠĠ Ġ@ Inject Ġlateinit Ġvar Ġtoast Creator : ĠToast Creator ĊĊĠĠĠ Ġoverride Ġval Ġlayout Res Id Ġ= ĠR . layout . activity _ login ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġget Start Intent ( context : ĠContext ): ĠIntent Ġ= ĠIntent ( context , ĠLogin Activity :: class . java ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĊĠĠĠĠĠĠĠ Ġif Ġ( savedInstanceState Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsupport FragmentManager . beginTransaction () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. replace ( R . id . login _ placeholder , ĠLogin Fragment ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. commit () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġobserve Event ( Show Toast Event :: class ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoast Creator . show Toast ( this , Ġit . message ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ