package Ġcom . chi ke android . paging tut spl us Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġandroidx . lifecycle . Observer Ċ import Ġandroidx . lifecycle . ViewModel Providers Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . chi ke android . paging tut spl us . adapter . Person Adapter Ċ import Ġcom . chi ke android . paging tut spl us . adapter . Person Non Paged Adapter Ċ import Ġcom . chi ke android . paging tut spl us . view models . Pers ons ViewModel Ċ Ċ class ĠMainActivity Ġ: ĠAppCompatActivity () Ġ{ ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar ĠviewModel : ĠPers ons ViewModel ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ main ) ĊĊĠĠĠĠĠĠĠ ĠviewModel Ġ= ĠViewModel Providers . of ( this ). get ( Pers ons ViewModel :: class . java ) ĊĊĠĠĠĠĠĠĠ Ġ// ĠP aged ĠAdapter ĊĠĠĠĠĠĠĠ Ġval Ġadapter Paged Ġ= ĠPerson Adapter () ĊĠĠĠĠĠĠĠ Ġsubscribe Ui Paged ( adapter Paged ) ĊĊĠĠĠĠĠĠĠ Ġ// ĠNon - page d ĠAdapter Ċ // ĠĠĠĠĠĠĠ Ġval Ġadapter Ġ= ĠPerson Non Paged Adapter () ĊĊĠĠĠĠĠĠĠ ĠfindViewById < RecyclerView >( R . id . name _ list ). adapter Ġ= Ġadapter Paged Ċ Ċ // ĠĠĠĠĠĠĠ Ġsubscribe UI ( adapter ) ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġprivate Ġfun Ġsubscribe Ui Paged ( adapter : ĠPerson Adapter ) Ġ{ ĊĠĠĠĠĠĠĠ ĠviewModel . get Person LiveData (). observe ( this , ĠObserver Ġ{ Ġnames Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( names Ġ!= Ġnull ) Ġadapter . submit List ( names ) ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġsubscribe UI ( adapter : ĠPerson Non Paged Adapter ) Ġ{ ĊĊĠĠĠĠĠĠĠ ĠviewModel . get Person Non Paged LiveData (). observe ( this , ĠObserver Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( it Ġ!= Ġnull ) Ġadapter . submit List ( it ) ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} Ċ }