/* Ċ Ġ* ĠĠĠĠĠĠ ĠCopyright Ġ( C ) Ġ 2 0 2 0 . Ġ Ġj x 3 box . com Ċ Ġ* Ċ Ġ* ĠĠĠ ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* ĠĠĠ Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠĠĠ ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠĠĠ ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* ĠĠĠ Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠĠĠ ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠĠĠ ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* ĠĠĠ Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġcom . jx 3 box . ui . message Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġcom . jx 3 box . R Ċ import Ġcom . jx 3 box . data . net . AppConfig Ċ import Ġcom . jx 3 box . databinding . Activity Message Binding Ċ import Ġcom . jx 3 box . module _ image browser . utils . imm ersion bar . Imm ersion Bar Ċ import Ġcom . jx 3 box . mv vm . base . Base V MA ct ivity Ċ import Ġcom . jx 3 box . ui . Normal Web Activity Ċ import Ġcom . jx 3 box . utils . get Compat String Ċ import Ġcom . jx 3 box . utils . start K tx Activity Ċ import Ġkotlinx . android . synt hetic . main . activity _ list .* Ċ import Ġkotlinx . android . synt hetic . main . activity _ message .* Ċ import Ġkotlinx . android . synt hetic . main . layout _ title _ back .* Ċ import Ġorg . k oin . android x . view model . ext . android . viewModel Ċ Ċ /** Ċ Ġ* Ġ@ author ĠCare y Ċ Ġ* Ġ@ date Ġ 2 0 2 0 / 1 2 / 2 2 Ċ Ġ*/ Ċ class ĠMessage Activity Ġ: ĠBase V MA ct ivity () Ġ{ ĊĠĠĠ Ġprivate Ġval Ġarticle ViewModel Ġby ĠviewModel < Message ViewModel >() ĊĠĠĠ Ġprivate Ġval Ġbinding Ġby Ġbinding < Activity Message Binding >( R . layout . activity _ message ) ĊĠĠĠ Ġprivate Ġval Ġmessage Adapter Ġby Ġlazy Ġ{ ĠMessage Adapter () Ġ} ĊĠĠĠ Ġoverride Ġfun Ġinit Data () Ġ{ ĊĠĠĠĠĠĠĠ Ġarticle ViewModel . getMessage ( true ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinit View () Ġ{ ĊĠĠĠĠĠĠĠ Ġbinding . run Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadapter Ġ= Ġmessage Adapter ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġinit Recycler () ĊĠĠĠĠĠĠĠ Ġm Img Back . setOnClickListener Ġ{ Ġon Back Pressed () Ġ} ĊĠĠĠĠĠĠĠ Ġtv Official Message . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbundle Ġ= ĠBundle () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbundle . putString (" url ", ĠApp Config . official _ message ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbundle . putString (" title ", Ġget Compat String ( R . string . message _ official )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstart K tx Activity < Normal Web Activity >( extra Ġ= Ġbundle ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġm Tv Title . text Ġ= Ġget Compat String ( R . string . message _ user ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġinit Recycler () Ġ{ ĊĠĠĠĠĠĠĠ Ġmessage Adapter . load More Module . setOn Load More Listener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġarticle ViewModel . getMessage ( false ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġmessage Adapter . setOn ItemClickListener Ġ{ Ġ_, Ġ_, Ġposition Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġitem Ġ= Ġmessage Adapter . getItem ( position ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( item . read Ġ== Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitem . read Ġ= Ġ 1 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage Adapter . notify Item Changed ( position ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġarticle ViewModel . read Message ( item . ID . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbundle Ġ= ĠBundle () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbundle . put Parcelable (" message ", Ġitem ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstart K tx Activity < Message Detail Activity >( extra Ġ= Ġbundle ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinit Imm ersion Bar () Ġ{ ĊĠĠĠĠĠĠĠ ĠImm ersion Bar . with ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. status Bar Dark Font ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. fits System Windows ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. status Bar Color ( R . color . white ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. init () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġstart Ob serve () Ġ{ ĊĠĠĠĠĠĠĠ Ġarticle ViewModel . message State . observe ( this @ Message Activity ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . is Success ?. let Ġ{ Ġresult Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage Adapter . run Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( it . isLoading ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( result . messages . isNotEmpty ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadd Data ( result . messages ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage Adapter . load More Module . load More Complete () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage Adapter . load More Module . load More End () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset List ( result . messages ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }