package Ġcom . example . news . view . fragment . home Ċ Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroidx . view pager 2 . adapter . Fragment State Adapter Ċ import Ġcom . example . news . R Ċ import Ġcom . example . news . util . Constants . BUS INESS _ PAGE Ċ import Ġcom . example . news . util . Constants . FA V _ PAGE Ċ import Ġcom . example . news . util . Constants . SCI ENCE _ PAGE Ċ import Ġcom . example . news . view . fragment . favorites . F avorites Fragment Ċ import Ġcom . example . news . view . fragment . news . News Fragment Ċ Ċ class ĠNews Pager Adapter ( fragment : ĠFragment ) Ġ: ĠFragment State Adapter ( fragment ) Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġtab Fragments Creators : ĠMap < Int , Ġ() Ġ-> ĠFragment > Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠ ĠBUSINESS _ PAGE Ġto Ġ{ ĠNews Fragment . create ( fragment . context ?. getString ( R . string . business ) Ġ?: Ġ"") Ġ}, ĊĠĠĠĠĠĠĠ ĠS CI ENCE _ PAGE Ġto Ġ{ ĠNews Fragment . create ( fragment . context ?. getString ( R . string . science ) Ġ?: Ġ"") Ġ}, ĊĠĠĠĠĠĠĠ ĠF AV _ PAGE Ġto Ġ{ ĠF avorites Fragment () Ġ} ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count () Ġ= Ġtab Fragments Creators . size ĊĊĠĠĠ Ġoverride Ġfun Ġcreate Fragment ( position : ĠInt ): ĠFragment Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġtab Fragments Creators [ position ]?. invoke () Ġ?: Ġthrow ĠIndex OutOfBoundsException () ĊĠĠĠ Ġ} Ċ }