package Ġcom . gu u idea . in reading . ui . activity Ċ Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . recyclerview . widget . RecyclerView Ċ import Ġandroidx . view pager . widget . ViewPager Ċ import Ġcom . google . android . flex box .* Ċ import Ġcom . google . android . material . tabs . Tab Layout Ċ import Ġcom . gu u idea . in reading . R Ċ import Ġcom . gu u idea . in reading . ui . adapter . Book Class Pager Adapter Ċ import Ġcom . gu u idea . in reading . ui . base . Base Activity Ċ import Ġcom . gu u idea . in reading . ui . base . Base Fragment Ċ import Ġcom . gu u idea . in reading . ui . fragment . Last Release Fragment Ċ import Ġcom . gu u idea . in reading . ui . fragment . Most View ed Fragment Ċ import Ġcom . gu u idea . in reading . widget . Custom Action bar ĊĊ Ċ /** Ċ Ġ* Ġ@ file ĠĠĠĠĠ ĠRank ing Activity Ċ Ġ* Ġ@ description ĠĠĠ ĠTODO Ċ Ġ* Ġ@ author ĠĠĠĠĠĠĠĠ Ġæ ± Ł Ġ æĿ ° Ċ Ġ* Ġ@ create Date ĠĠĠĠĠ 2 0 2 0 / 1 1 / 3 Ġ 1 0 : 4 0 Ċ Ġ*/ Ċ class ĠRank ing Activity Ġ: ĠBase Activity () Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġcustom Bar Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠfindViewById < Custom Action bar >( R . id . action _ bar ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġprivate Ġval Ġflex Box Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠfindViewById < RecyclerView >( R . id . flex _ box ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġprivate Ġval Ġtabs Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠfindViewById < Tab Layout >( R . id . tabs ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġprivate Ġval Ġbook Counts Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠfindViewById < TextView >( R . id . book _ count ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġprivate Ġval Ġv g Books Ġby Ġlazy Ġ{ ĊĠĠĠĠĠĠĠ ĠfindViewById < ViewPager >( R . id . vg _ books ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġfragments : ĠArrayList < Base Fragment > Ġ= ĠArrayList () ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ ä¹¦ ç± į ç±» åĪ« ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprivate Ġval Ġbook Class : ĠArray < String > Ġ= ĠarrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" All ", Ġ" W uX ia ", Ġ" Mod ern ", Ġ" F antasy ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" S ci - fi ", Ġ" Rom ance " ĊĠĠĠ Ġ) ĊĠĠĠ Ġprivate Ġval Ġbook ClassType Ġ= ĠarrayOf < Int >( 0 , Ġ 4 , Ġ 7 , Ġ 1 , Ġ 6 , Ġ 9 ) ĊĠĠĠ Ġprivate Ġval Ġtitles : ĠArray < String > Ġ= ĠarrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" Most ĠView ed ", Ġ" Last Ġrelease " ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġoverride Ġfun ĠgetContent Id (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠR . layout . activity _ ranking ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinit Widget () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . init Widget () ĊĠĠĠĠĠĠĠ Ġsetup Adapter () ĊĠĠĠĠĠĠĠ Ġsetup ViewPager () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġsetup Adapter () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġflex LayoutManager Ġ= ĠFlex box LayoutManager ( this ) ĊĠĠĠĠĠĠĠ Ġflex LayoutManager . flex Wrap Ġ= ĠFlex Wrap . WRAP ĊĠĠĠĠĠĠĠ Ġflex LayoutManager . flex Direction Ġ= ĠFlex Direction . ROW ĊĠĠĠĠĠĠĠ Ġflex LayoutManager . align Items Ġ= ĠAlign Items . ST RET CH ĊĠĠĠĠĠĠĠ Ġflex LayoutManager . justify Content Ġ= ĠJust ify Content . FLEX _ START ĊĠĠĠĠĠĠĠ Ġflex Box . layout Manager Ġ= Ġflex LayoutManager ĊĠĠĠĠĠĠĠ Ġflex Box . adapter Ġ= ĠBook Class Adapter ( book Class , Ġobject Ġ: ĠOn Item Click Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Item Click ( position : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon Book Class Click Event ( position ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġsetup ViewPager () Ġ{ ĊĠĠĠĠĠĠĠ Ġfragments . add ( Most View ed Fragment ()) ĊĠĠĠĠĠĠĠ Ġfragments . add ( Last Release Fragment ()) ĊĠĠĠĠĠĠĠ Ġv g Books . adapter Ġ= ĠBook Class Pager Adapter ( support FragmentManager , Ġfragments , Ġtitles ) ĊĠĠĠĠĠĠĠ Ġtabs . setup With ViewPager ( vg Books ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ é¡¶ éĥ¨ ä¹¦ ç± į ç±» åĪ« item çĤ¹åĩ» çĽ¸åºĶ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprivate Ġfun Ġon Book Class Click Event ( posit on : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġfragments . forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . refresh Data ( book ClassType [ posit on ]) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠBook Class Adapter ( private Ġval Ġdatas : ĠArray < String >, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprivate Ġval Ġitem Click : ĠOn Item Click ) Ġ: ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRecyclerView . Adapter < Book Class Adapter . Book Class ViewHolder >() Ġ{ ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠBook Class ViewHolder Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠBook Class ViewHolder ( LayoutInflater ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. from ( parent . context ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. inflate ( R . layout . item _ book _ item , Ġparent , Ġfalse )) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġdatas . size ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠBook Class ViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ( holder . item View Ġas ĠTextView ). setText ( datas [ position ]) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . item View . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitem Click . on Item Click ( position ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġinner Ġclass ĠBook Class ViewHolder ( view : ĠView ) Ġ: ĠRecyclerView . ViewHolder ( view ) Ġ{} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinterface ĠOn Item Click Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġon Item Click ( position : ĠInt ): ĠUnit ĊĠĠĠ Ġ} Ċ Ċ }