package Ġcom . amaz ing . eye Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroidx . core . content . Context Compat Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġandroid . view . View Ċ import Ġandroidx . fragment . app . Fragment State Pager Adapter . BE HAV IOR _ RE SU ME _ ONLY _ CURRENT _ FRAGMENT Ċ import Ġandroidx . view pager . widget . ViewPager Ċ import Ġcom . amaz ing . eye . adapter . Common View pager Adapter Ċ import Ġcom . amaz ing . eye . home . Recommend List Fragment Ċ import Ġcom . amaz ing . eye . hot . Hot List Fragment Ċ import Ġkotlinx . android . synt hetic . main . activity _ main .* Ċ Ċ class ĠMainActivity Ġ: ĠAppCompatActivity (), ĠView . OnClickListener Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġrecommend Position Ġ= Ġ 0 ĊĠĠĠ Ġprivate Ġval Ġhot Position Ġ= Ġ 1 ĊĠĠĠ Ġprivate Ġval Ġhome Item Ġ= Ġ 0 ĊĠĠĠ Ġprivate Ġval Ġhot Item Ġ= Ġ 1 ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ main ) ĊĊĠĠĠĠĠĠĠ Ġval Ġfragment List : ĠMutable List < Fragment > Ġ= Ġmutable ListOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRecommend List Fragment . newInstance (), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠHot List Fragment . newInstance () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġadapter Ġ= ĠCommon View pager Adapter ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsupport FragmentManager , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠBE HAV IOR _ RE SU ME _ ONLY _ CURRENT _ FRAGMENT , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfragment List ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġvp _ content _ main activ ty . off screen Page Limit Ġ= Ġfragment List . size ĊĠĠĠĠĠĠĠ Ġvp _ content _ main activ ty . adapter Ġ= Ġadapter ĊĠĠĠĠĠĠĠ Ġvp _ content _ main activ ty . currentItem Ġ= Ġrecommend Position ĊĠĠĠĠĠĠĠ Ġvp _ content _ main activ ty . is Scroll Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġvp _ content _ main activ ty . add On Page ChangeListener ( object Ġ: ĠView Pager . On Page ChangeListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Page Scroll StateChanged ( state : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Page Sc rolled ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġposition : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġposition Offset : ĠFloat , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġposition Offset Pixels : ĠInt ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Page Selected ( position : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Bottom Button ( position ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ}) ĊĊĠĠĠĠĠĠĠ Ġbtn _ recommend _ main activity . setOnClickListener ( this ) ĊĠĠĠĠĠĠĠ Ġbtn _ hot _ main activity . setOnClickListener ( this ) ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠonClick ( v : ĠView ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( v ?. id ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . btn _ recommend _ main activity Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Bottom Button ( home Item ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . id . btn _ hot _ main activity Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Bottom Button ( hot Item ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// è®¾ç½® åºķ éĥ¨ æĮīéĴ® çĬ¶æĢģ ĊĠĠĠ Ġprivate Ġfun Ġset Bottom Button ( item : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( item ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhome Item Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbtn _ recommend _ main activity . setTextColor ( Context Compat . getColor ( this , ĠR . color . text _ 3 3 3 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbtn _ hot _ main activity . setTextColor ( Context Compat . getColor ( this , ĠR . color . text _ 6 6 6 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvp _ content _ main activ ty . currentItem Ġ= Ġrecommend Position ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhot Item Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbtn _ recommend _ main activity . setTextColor ( Context Compat . getColor ( this , ĠR . color . text _ 6 6 6 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbtn _ hot _ main activity . setTextColor ( Context Compat . getColor ( this , ĠR . color . text _ 3 3 3 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvp _ content _ main activ ty . currentItem Ġ= Ġhot Position ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ