package Ġcom . car ouse ll . view model adapter . items Ċ Ċ import Ġandroid . text . Editable Ċ import Ġandroid . text . Text Watcher Ċ import Ġandroid . view . View Ċ import Ġcom . car ouse ll . view model . adapter . ViewModel Holder Ċ import Ġkotlinx . android . synt hetic . main . adapter _ edit . view .* Ċ Ċ class ĠEdit Holder ( item View : ĠView ) Ġ: ĊĠĠĠ ĠViewModel Holder < Edit ViewModel >( item View ), ĠText Watcher Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ( viewModel : ĠEdit ViewModel ) Ġ{ ĊĠĠĠĠĠĠĠ ĠitemView . edit . add TextChanged Listener ( this ) ĊĠĠĠĠĠĠĠ ĠitemView . edit . setText ( viewModel . getValue ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Un bind ( viewModel : ĠEdit ViewModel ) Ġ{ ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġafter TextChanged ( p 0 : ĠEdit able ?) Ġ{ ĊĠĠĠĠĠĠĠ ĠviewModel ?. setValue ( p 0 . toString ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġbefore TextChanged ( p 0 : ĠCharSequence ?, Ġp 1 : ĠInt , Ġp 2 : ĠInt , Ġp 3 : ĠInt ) Ġ{ ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon TextChanged ( p 0 : ĠCharSequence ?, Ġp 1 : ĠInt , Ġp 2 : ĠInt , Ġp 3 : ĠInt ) Ġ{ ĊĠĠĠ Ġ} Ċ }