package Ġcom . example . hello databinding 5 Ċ Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . widget . Button Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . lifecycle . Observer Ċ import Ġandroidx . lifecycle . ViewModel Providers ĊĊ Ċ class ĠMainActivity Ġ: ĠAppCompatActivity () Ġ{ ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġmodel : ĠMy Crypt oc urrency ViewModel ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ main ) ĊĊĠĠĠĠĠĠĠ Ġmodel Ġ= ĠViewModel Providers . of ( this ). get ( My Crypt oc urrency ViewModel :: class . java ) ĊĊĠĠĠĠĠĠĠ Ġval ĠtextView Ġ: ĠTextView Ġ= ĠfindViewById ( R . id . textView ) ĊĠĠĠĠĠĠĠ Ġval ĠtextView 2 Ġ: ĠTextView Ġ= ĠfindViewById ( R . id . textView 2 ) ĊĊĠĠĠĠĠĠĠ Ġval Ġname Observer Ġ= ĠObserver < String > Ġ{ ĠnewName Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ ĠtextView . text Ġ= ĠnewName ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġrank Observer Ġ= ĠObserver < String > Ġ{ Ġnew Rank Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ ĠtextView 2 . text Ġ= Ġnew Rank ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ ĠfindViewById < Button >( R . id . button ). setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmodel . name . setValue (" New ĠName ") ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġmodel . fullname . observe ( this , Ġname Observer ) ĊĠĠĠĠĠĠĠ Ġmodel . rank . observe ( this , Ġrank Observer ) ĊĠĠĠ Ġ} Ċ } Ċ