package Ġinfo . hz v tc . hip ix iv . vm . fragment Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . databinding . ViewData Binding Ċ import Ġinfo . hz v tc . hip ix iv . view . Root Activity Ċ import Ġinfo . hz v tc . hip ix iv . view . fragment . Base Fragment Ċ Ċ abstract Ġclass ĠBase Fragment ViewModel < V Ġ: ĠBase Fragment < T >, T Ġ: ĠView Data Binding >{ ĊĠĠĠ Ġprotected Ġlateinit Ġvar Ġm View Ġ: ĠV ĊĠĠĠ Ġprotected Ġlateinit Ġvar Ġm Bind Ġ: ĠT ĊĊĠĠĠ Ġfun Ġset View ( view Ġ: ĠV ){ ĊĠĠĠĠĠĠĠ Ġthis . m View Ġ= Ġview ĊĠĠĠĠĠĠĠ Ġthis . m Bind Ġ= Ġview . get Binding () ĊĠĠĠĠĠĠĠ Ġinit ViewModel () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠgetParent () Ġ: ĠRoot Activity ? { ĊĠĠĠĠĠĠĠ Ġif ( m View . activity Ġis ĠRoot Activity ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġm View . activity Ġas ĠRoot Activity ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġnull ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠgetString ( res Id Ġ: ĠInt ) Ġ: ĠString Ġ= Ġm View . getString ( res Id ) ĊĊĠĠĠ Ġfun ĠgetContext () Ġ: ĠContext Ġ= Ġm View . context ĊĊĠĠĠ Ġabstract Ġfun Ġrun View () ĊĊĠĠĠ Ġabstract Ġfun Ġinit ViewModel () Ċ } Ċ