package Ġcom . ep ig ram . android . ui . main Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroidx . annotation . String Res Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroidx . fragment . app . FragmentManager Ċ import Ġandroidx . fragment . app . Fragment Pager Adapter Ċ import Ġcom . ep ig ram . android . R Ċ Ċ import Ġjava . util . HashMap Ċ Ċ /** Ċ Ġ* ĠA Ġ[ Fragment Pager Adapter ] Ġthat Ġreturns Ġa Ġfragment Ġcorresponding Ġto Ċ Ġ* Ġone Ġof Ġthe Ġsections / tabs / pages . Ċ Ġ*/ Ċ class ĠSe ctions Pager Adapter ( private Ġval ĠmContext : ĠContext , Ġfm : ĠFragment Manager ) Ġ: ĠFragment Pager Adapter ( fm ) Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġfragment Map Ġ= ĠHashMap < Int , ĠTab Fragment >() ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem ( position : ĠInt ): ĠFragment Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ(! fragment Map . containsKey ( position )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfragment Map [ position ] Ġ= ĠTab Fragment . newInstance ( FILTER S [ position ], Ġposition ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġfragment Map [ position ] !! ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Page Title ( position : ĠInt ): ĠCharSequence ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠmContext . resources . getString ( TAB _ TIT LES [ position ]) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Count (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠFILTER S . size ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġfragment Re selected ( index : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġfragment Map [ index ]?. re selected () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ@ String Res ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠTAB _ TIT LES Ġ= Ġint ArrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . tab _ text _ 1 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . tab _ text _ r , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . tab _ text _ 2 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . tab _ text _ 3 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . tab _ text _ 4 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . tab _ text _ 5 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . tab _ text _ 6 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . tab _ text _ 7 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// R . string . tab _ text _ 8 , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// R . string . tab _ text _ 9 , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// R . string . tab _ text _ 1 0 ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠFILTER S Ġ= Ġint ArrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . empty , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . empty , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . tag 1 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . tag 2 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . tag 3 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . tag 4 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . tag 5 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠR . string . tag 6 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// R . string . tag 7 , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// R . string . tag 8 , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// R . string . tag 9 ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ Ċ }