package Ġcom . slim . adapter Ċ Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroidx . fragment . app . FragmentManager Ċ import Ġandroidx . fragment . app . Fragment State Pager Adapter Ċ import Ġandroidx . view pager . widget . ViewPager ĊĊ Ċ /** Ċ Ġ* ĠDate : Ġ 2 0 1 8 - 0 4 - 1 8 Ċ Ġ* ĠTime : Ġ 1 3 : 2 6 Ċ Ġ* ĠDescription : ĠFragment State Pager Adapter Ċ Ġ*/ Ċ class ĠS lim Pager Adapter ( fm : ĠFragment Manager ) Ġ: ĠFragment State Pager Adapter ( fm ) Ġ{ ĊĠĠĠ Ġprivate Ġval Ġpager Items Ġ= ĠArrayList < Fragment >() ĊĠĠĠ Ġprivate Ġval Ġtitle Items Ġ= ĠArrayList < CharSequence >() ĊĊĊĠĠĠ Ġfun Ġadd ( fragment : ĠFragment , Ġtitle : ĠCharSequence Ġ= Ġ"") Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġpager Items . add ( fragment ) ĊĠĠĠĠĠĠĠ Ġtitle Items . add ( title ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġadd ( fragments : ĠList < Fragment >, Ġtitles : ĠList < CharSequence >) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġpager Items . addAll ( fragments ) ĊĠĠĠĠĠĠĠ Ġtitle Items . addAll ( titles ) ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġfun Ġremove ( position : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġpager Items . remove At ( position ) ĊĠĠĠĠĠĠĠ Ġtitle Items . remove At ( position ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġinto ( view Pager : ĠView Pager ?) Ġ= Ġapply Ġ{ ĊĠĠĠĠĠĠĠ Ġview Pager ?. adapter Ġ= Ġthis @ Slim Pager Adapter ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Count (): ĠInt Ġ= Ġpager Items . size ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem ( position : ĠInt ) Ġ= Ġpager Items [ position ] ĊĊĠĠĠ Ġoverride Ġfun Ġget Page Title ( position : ĠInt ) Ġ= Ġtitle Items [ position ] ĊĊ Ċ } Ċ