package Ġcom . w sd y den i . module _ main . ui . home Ċ Ċ import Ġandroidx . core . content . Context Compat Ċ import Ġcom . alibaba . android . ar outer . facade . annotation . Route Ċ import Ġcom . alibaba . android . ar outer . launcher . AR outer Ċ import Ġcom . google . android . material . tabs . Tab Layout Ċ import Ġcom . w sd y den i . library _ base . base . Base Fragment Ċ import Ġcom . w sd y den i . library _ base . base . config . Data Binding Config Ċ import Ġcom . w sd y den i . library _ base . config . Path Config Ċ import Ġcom . w sd y den i . library _ base . utils . Status Util Ċ import Ġcom . w sd y den i . library _ view . banner . Banner Adapter Ċ import Ġcom . w sd y den i . module _ main . BR Ċ import Ġcom . w sd y den i . module _ main . R Ċ import Ġcom . w sd y den i . module _ main . ui . ad p ater . Home ViewPager Adapter Ċ import Ġkotlinx . android . synt hetic . main . fragment _ home .* ĊĊ Ċ @ Route ( path Ġ= ĠPath Config . PATH _ HOME ) Ċ class ĠHome Fragment Ġ: ĠBase Fragment () Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġhome ViewModel Ġ= ĠHome ViewModel () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġvar Ġbanner Adapter : ĠBanner Adapter Ġ= ĠBanner Adapter (). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġset OnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠA Router . getInstance (). build ( Path Config . PATH _ BROWSER ). with String (" url ", it ). navigation () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetData Binding Config (): ĠData Binding Config Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠData Binding Config ( R . layout . fragment _ home , BR . viewModel , home ViewModel ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinit View () Ġ{ ĊĠĠĠĠĠĠĠ ĠStatus Util . setStatus Bar Padding And Height ( home _ toolbar , this . activity ) ĊĠĠĠĠĠĠĠ Ġval Ġadapter Ġ= ĠHome ViewPager Adapter ( child FragmentManager ) ĊĠĠĠĠĠĠĠ Ġhome _ view pager . adapter Ġ= Ġadapter ĊĠĠĠĠĠĠĠ Ġhome _ view pager . off screen Page Limit Ġ= Ġ 2 ĊĠĠĠĠĠĠĠ Ġhome _ view pager . add On Page ChangeListener ( object Ġ: ĠTab Layout . Tab Layout On Page ChangeListener ( home _ tab ){ }) ĊĠĠĠĠĠĠĠ Ġhome _ tab . add On Tab Selected Listener ( object Ġ: ĠTab Layout . On Tab Selected Listener { ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Tab Un selected ( tab : ĠTab Layout . Tab ) Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Tab Re selected ( tab : ĠTab Layout . Tab ) Ġ{} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Tab Selected ( tab : ĠTab Layout . Tab ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġhome _ view pager . setCurrent Item ( tab . position , false ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠ Ġhome _ toolbar . setText Size ( 1 8 f ) ĊĠĠĠĠĠĠĠ Ġhome _ toolbar . set Menu Drawable ( Context Compat . get Drawable ( require Context (), R . drawable . ic _ baseline _ search ) !! ) ĊĠĠĠĠĠĠĠ Ġhome _ toolbar . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠA Router . getInstance (). build ( Path Config . PATH _ SEARCH ). navigation () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġhome _ toolbar . setText (" æ¬¢ è¿İ æĿ¥ åĪ° çİ© Wan Android ") ĊĠĠĠĠĠĠĠ Ġhome _ banner . dismiss Indicator View () ĊĠĠĠĠĠĠĠ Ġhome _ fab . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ(( child FragmentManager . fragments [ home _ view pager . currentItem ]) Ġas ĠHome IS ). scrollTo Top () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinit Data () Ġ{ ĊĠĠĠĠĠĠĠ Ġhome ViewModel . get Banner List () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġstart Ob serve () Ġ{ ĊĠĠĠĠĠĠĠ Ġhome ViewModel . banner List . observe ( this ,{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhome _ banner . setAdapter ( banner Adapter ). setData ( it ) ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Pause () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Pause () ĊĠĠĠĠĠĠĠ Ġhome _ banner ?. stop Loop () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Resume () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Resume () ĊĠĠĠĠĠĠĠ Ġhome _ banner ?. start Loop () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Destroy () Ġ{ ĊĠĠĠĠĠĠĠ Ġhome _ banner ?. stop Loop () ĊĠĠĠĠĠĠĠ Ġsuper . on Destroy () ĊĠĠĠ Ġ} Ċ }