package Ġcom . chen j im . and libs . demo Ċ Ċ import Ġandroidx . lifecycle . ViewModel Provider . Android ViewModel Factory Ċ import Ġcom . chen j im . and libs . activity . Mv vm Activity Ċ import Ġcom . chen j im . and libs . demo . Main ViewModel . I Page View Ċ import Ġcom . chen j im . and libs . demo . databinding . Activity Main Binding Impl Ċ import Ġcom . chen j im . and libs . demo . fr agement . Container Fragment Ċ import Ġcom . chen j im . and libs . utils . Logger Ċ Ċ /** Ċ Ġ* Ġ@ author Ġj im . chen Ċ Ġ*/ Ċ class ĠMainActivity Ġ: ĠM v vm Activity < Activity Main Binding Impl ?, ĠMain ViewModel ?> (), ĠI Page View Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġon Retry Btn Click () Ġ{} ĊĊĠĠĠ Ġoverride Ġfun Ġcreate ViewModel (): ĠMain ViewModel Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠAndroid ViewModel Factory ( application ). create ( Main ViewModel :: class . java ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinit View () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . init View () ĊĠĠĠĠĠĠĠ Ġfragment Replace ( R . id . container , ĠContainer Fragment (), Ġfalse ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Binding Variable (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠBR . viewModel ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Layout Id (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠR . layout . activity _ main ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdo Action () Ġ{ ĊĠĠĠĠĠĠĠ ĠLogger . d () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġrequest Response ( data : ĠData Response ?) Ġ{ ĊĠĠĠĠĠĠĠ ĠLogger . d ( data ) ĊĠĠĠ Ġ} Ċ }