package Ġcom . example . template . user Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . View Ċ import Ġandroidx . navigation . fragment . find Nav Controller Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġcom . example . template . R Ċ import Ġcom . example . template . databinding . Fragment User Binding Ċ import Ġcom . example . template . model . User Ċ import Ġcom . example . template . tools . base . Base Bind able Fragment Ċ import Ġcom . example . template . tools . base . ItemClickListener Ċ import Ġcom . example . template . tools . extensions . add Default Configuration Ċ import Ġkotlinx . android . synt hetic . main . fragment _ user .* Ċ import Ġorg . k oin . android . view model . ext . android . viewModel Ċ Ċ class ĠUser Fragment Ġ: ĠBase Bind able Fragment < Fragment User Binding >(), ĠItem ClickListener < User > Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġm ViewModel : ĠUser ViewModel Ġby ĠviewModel () ĊĠĠĠ Ġprivate Ġval Ġm Adapter Ġby Ġlazy Ġ{ ĠUser Adapter ( this ) Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Layout () Ġ= ĠR . layout . fragment _ user ĊĊĠĠĠ Ġoverride Ġfun Ġon Item Clicked ( item : ĠUser ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠuserId Ġ= Ġitem . id ĊĠĠĠĠĠĠĠ Ġval Ġaction Ġ= ĠUser Fragment Directions . goTo Posts ( userId ) ĊĠĠĠĠĠĠĠ Ġfind Nav Controller (). navigate ( action ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġbinding Data ( m Binding : ĠFragment User Binding ) Ġ{ ĊĠĠĠĠĠĠĠ Ġm Binding . viewModel Ġ= Ġm ViewModel ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on View Created ( view , ĠsavedInstanceState ) ĊĠĠĠĠĠĠĠ Ġsetup RecyclerView ( rv Users ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġsetup RecyclerView ( re cyclerView : ĠRecyclerView ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwith ( re cyclerView ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd Default Configuration ( activity ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadapter Ġ= Ġm Adapter ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }