package Ġcom . edu . wk x . my Con c enc amp . view . fragment Ċ Ċ import Ġandroid . arch . lifecycle . Lifecycle Fragment Ċ import Ġandroid . arch . lifecycle . ViewModel Providers Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . support . v 7 . widget . St agger ed Grid LayoutManager Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . ImageView Ċ import Ġcom . bm . library . Info Ċ import Ġcom . bm . library . Photo View Ċ import Ġcom . bump tech . glide . G lide Ċ import Ġcom . ch ad . library . adapter . base . Base Quick Adapter Ċ import Ġcom . edu . wk x . doub an . view . Custom Load More View Ċ import Ġcom . edu . wk x . my Con c enc amp . R Ċ import Ġcom . edu . wk x . my Con c enc amp . view . adapter . W elf are Adapter Ċ import Ġcom . edu . wk x . my Con c enc amp . view . view model . W elf are ViewModel Ċ import Ġcom . or h ano but . logger . Logger Ċ import Ġkotlinx . android . synt hetic . main . fragment _ w elf are .* Ċ import Ġorg . jetbrains . ank o . background Drawable Ċ import Ġorg . jetbrains . ank o . image Ċ import Ġorg . jetbrains . ank o . sdk 2 5 . coroutines . onClick Ċ Ċ class ĠW elf are Fragment Ġ: ĠLifecycle Fragment () Ġ{ ĊĊĊĠĠĠ Ġprivate Ġvar ĠPAGE Ġ= Ġ 1 ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġm Adapter : ĠW elf are Adapter ĊĠĠĠ Ġprivate Ġlateinit Ġvar ĠviewModel : ĠW elf are ViewModel ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠTAG Ġ= Ġ" W elf are Fragment " ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( in flater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ?, ĠsavedInstanceState : ĠBundle ?): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġinflater . inflate ( R . layout . fragment _ w elf are , Ġcontainer , Ġfalse ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Activity Created ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Activity Created ( savedInstanceState ) ĊĠĠĠĠĠĠĠ Ġinit Recycler () ĊĠĠĠĠĠĠĠ ĠviewModel Ġ= ĠViewModel Providers . of ( this ). get ( W elf are ViewModel :: class . java ) ĊĠĠĠĠĠĠĠ ĠviewModel . getList ( PAGE . toString ()) ?. observe Fore ver Ġ{ Ġlist Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLogger . d (" list ---- -> åıĳçĶŁ åıĺåĮĸ , Ġlist Size :${ list ?. size }") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlist ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Adapter . addData ( it ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Adapter . load More Complete () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġm Adapter . setOn Load More Listener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPAGE Ġ+= Ġ 1 ĊĠĠĠĠĠĠĠĠĠĠĠ ĠviewModel . getList ( PAGE . toString ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġphoto View . enable () ĊĠĠĠĠĠĠĠ Ġvar Ġm Info : ĠInfo ? Ġ= Ġnull ĊĠĠĠĠĠĠĠ Ġm Adapter . setOn ItemClickListener Ġ{ Ġadapter , Ġview , Ġposition Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġimg Ġ= Ġview . findViewById < ImageView >( R . id . img W elf are ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLogger . d (" img : Ġ${ img . image }, Ġdrawable : Ġ${ img . drawable }" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" background Drawable : Ġ${ img . background Drawable }") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm Info Ġ= ĠPhoto View . get ImageView Info ( img ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm Adapter . getItem ( position )? ._ id ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠG lide . with ( context ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. load ( viewModel . get Img ById ( it )[ 0 ]. url ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. into ( photo View ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġphoto Layout . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠĠĠĠĠ Ġphoto View . an ima From ( m Info ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġphoto View . onClick Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġphoto View . an ima To ( m Info ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġphoto Layout . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit Recycler () Ġ{ ĊĠĠĠĠĠĠĠ Ġm RecyclerView . set Has Fixed Size ( true ) ĊĠĠĠĠĠĠĠ Ġm RecyclerView . layout Manager Ġ= ĠSt agger ed Grid LayoutManager ( 2 , ĠSt agger ed Grid LayoutManager . VERTICAL ) ĊĠĠĠĠĠĠĠ Ġm Adapter Ġ= ĠW elf are Adapter () ĊĠĠĠĠĠĠĠ Ġm Adapter . open Load Animation ( Base Quick Adapter . SCALE IN ) ĊĠĠĠĠĠĠĠ Ġm Adapter . set Load More View ( Custom Load More View ()) ĊĠĠĠĠĠĠĠ Ġm Adapter . set Enable Load More ( true ) ĊĠĠĠĠĠĠĠ Ġm RecyclerView . adapter Ġ= Ġm Adapter ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Destroy View () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Destroy View () ĊĠĠĠĠĠĠĠ ĠPAGE Ġ= Ġ 1 ĊĠĠĠ Ġ} Ċ }