package Ġcom . common . adapter Ċ Ċ import Ġandroid . support . v 4 . app . Fragment Ċ import Ġandroid . support . v 4 . app . FragmentManager Ċ import Ġandroid . support . v 4 . app . Fragment Pager Adapter Ċ import Ġandroid . view . ViewGroup Ċ import Ġcom . algorithm . Algorithm Fragment Ċ import Ġcom . base . Base Fragment Ċ import Ġcom . common . Constants Ċ import Ġcom . flutter . Proxy Flutter Fragment Ċ import Ġcom . inter view . Inter view Fragment Ċ import Ġcom . me it uan . React Native Fragment Ċ import Ġcom . rx java . Rx Java Fragment Ċ Ċ /** Ċ Ġ* ĠCreated Ġby ĠEd win , CH EN Ġon Ġ 2 0 2 0 / 4 / 2 6 . Ċ Ġ*/ Ċ open Ġclass ĠHome ViewPager Fragment Adapter Ġ: ĠFragment Pager Adapter Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġlist Ġ= ĠArrayList < Fragment >() ĊĊĠĠĠ Ġprivate Ġval Ġtitles Ġ= ĠArrayList < String >() ĊĊĠĠĠ Ġprivate Ġvar Ġcurrent Selected Page Ġ: Base Fragment ? Ġ= Ġnull ĊĊĊĠĠĠ Ġconstructor ( fm : FragmentManager ) Ġ: super ( fm ){ ĊĠĠĠĠĠĠĠ Ġif Ġ( list . size Ġ<= Ġ 0 ){ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlist . add ( React Native Fragment . create Fragment ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlist . add ( Inter view Fragment . create Fragment ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlist . add ( Rx Java Fragment . create Fragment ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlist . add ( Algorithm Fragment . create Fragment ()) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġlist . add ( Proxy Flutter Fragment . create Fragment ( Constants . FL UT TER _ INITIAL _ ROUTE )) Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġlist . add ( Flutter Fragment 2 . create Fragment ()) ĊĠĠĠĠĠĠĠ Ġ} Ċ // ĠĠĠĠĠĠĠ Ġif Ġ( titles . size Ġ<= Ġ 0 ) Ġ{ Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġtitles . add (" ç¾İ åĽ¢ 0 ") Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġtitles . add (" ç¾İ åĽ¢ 1 ") Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġtitles . add (" ç¾İ åĽ¢ 2 ") Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġtitles . add (" Flutter ĠDemo ") Ċ // ĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ // ĠĠĠ Ġoverride Ġfun Ġget Page Title ( position : ĠInt ): ĠCharSequence ? Ġ{ Ċ // ĠĠĠĠĠĠĠ Ġreturn Ġtitles [ position ] Ċ // ĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġset Primary Item ( container : ĠViewGroup , Ġposition : ĠInt , Ġobj : ĠAny ) Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġis Current Selected Page Changed Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( obj Ġ!= Ġcurrent Selected Page ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Current Selected Page Changed Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( current Selected Page Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcurrent Selected Page !!. on Un Paged Selected () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġsuper . set Primary Item ( container , Ġposition , Ġobj ) ĊĠĠĠĠĠĠĠ Ġif Ġ( is Current Selected Page Changed ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcurrent Selected Page Ġ= Ġobj Ġas ĠBase Fragment ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( current Selected Page Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcurrent Selected Page !!. on Page Selected () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem ( index : ĠInt ): ĠFragment Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġlist [ index ] ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Count (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġlist . size ĊĠĠĠ Ġ} Ċ Ċ }