package Ġcom . sha . s recorder . views Ċ Ċ import Ġandroid . annotation . Suppress Lint Ċ import Ġandroid . content . Context Ċ import Ġandroid . graphics . Canvas Ċ import Ġandroid . graphics . Paint Ċ import Ġandroid . graphics . Type face Ċ import Ġandroid . os . Build Ċ import Ġandroid . os . Parcel Ċ import Ġandroid . os . Parcelable Ċ import Ġandroid . util . Attribute Set Ċ import Ġandroid . util . Typed Value Ċ import Ġandroid . view . Gravity Ċ import Ġandroid . view . View Ċ import Ġandroid . view . View Tree Observer Ċ import Ġandroid . widget . Horizontal ScrollView Ċ import Ġandroid . widget . Image Button Ċ import Ġandroid . widget . LinearLayout Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . view pager . widget . ViewPager Ċ import Ġcom . sha . s recorder . R Ċ import Ġjava . util .* Ċ Ċ /** Ċ Ġ* ĠCreated Ġby ĠSh ah ul ĠH ame ed ĠSh a ik Ġon Ġ 0 2 / 1 2 / 2 0 2 0 . Ċ Ġ*/ Ċ class ĠSh a ViewPager Slider Ġ@ Jvm Over loads Ġconstructor ( ĊĠĠĠĠĠĠĠ Ġcontext : ĠContext , ĊĠĠĠĠĠĠĠ Ġattrs : ĠAttributeSet ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠ Ġdef Style : ĠInt Ġ= Ġ 0 Ċ ) Ġ: ĠHorizontal ScrollView ( context , Ġattrs , Ġdef Style ) Ġ{ ĊĠĠĠ Ġinterface ĠIcon Tab Provider Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġget Page Icon Res Id ( position : ĠInt ): ĠInt ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ// Ġ@ formatter : on ĊĠĠĠ Ġprivate Ġval Ġdefault Tab LayoutParams : ĠLinearLayout . LayoutParams ĊĠĠĠ Ġprivate Ġval Ġexpanded Tab LayoutParams : ĠLinearLayout . LayoutParams ĊĠĠĠ Ġprivate Ġval Ġpage Listener Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPage Listener () ĊĠĠĠ Ġvar Ġdelegate Page Listener : ĠView Pager . On Page ChangeListener ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġval Ġtabs Container : ĠLinearLayout ĊĠĠĠ Ġprivate Ġvar Ġpager : ĠView Pager ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġvar Ġtab Count Ġ= Ġ 0 ĊĠĠĠ Ġprivate Ġvar Ġcurrent Position Ġ= Ġ 0 ĊĠĠĠ Ġprivate Ġvar Ġcurrent Position Offset Ġ= Ġ 0 f ĊĠĠĠ Ġprivate Ġval Ġrect Paint : ĠPaint ĊĠĠĠ Ġprivate Ġval Ġdivider Paint : ĠPaint ĊĠĠĠ Ġprivate Ġvar Ġindicator Color Ġ= Ġ- 0 x 9 9 9 9 9 a ĊĠĠĠ Ġprivate Ġvar Ġunderline Color Ġ= Ġ 0 x 1 A 0 0 0 0 0 0 ĊĠĠĠ Ġprivate Ġvar Ġdivider Color Ġ= Ġ 0 x 1 A 0 0 0 0 0 0 ĊĠĠĠ Ġprivate Ġvar Ġshould Expand Ġ= Ġfalse ĊĠĠĠ Ġvar Ġis Text All Caps Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġprivate Ġset ĊĠĠĠ Ġprivate Ġvar Ġscroll Offset Ġ= Ġ 5 2 ĊĠĠĠ Ġprivate Ġvar Ġindicator Height Ġ= Ġ 8 ĊĠĠĠ Ġprivate Ġvar Ġunderline Height Ġ= Ġ 2 ĊĠĠĠ Ġprivate Ġvar Ġdivider Padding Ġ= Ġ 1 2 ĊĠĠĠ Ġprivate Ġvar Ġtab Padding Ġ= Ġ 2 4 ĊĠĠĠ Ġprivate Ġvar Ġdivider Width Ġ= Ġ 1 ĊĠĠĠ Ġprivate Ġvar Ġtab Text Size Ġ= Ġ 1 2 ĊĠĠĠ Ġprivate Ġvar Ġtab TextColor Ġ= Ġ- 0 x 9 9 9 9 9 a ĊĠĠĠ Ġprivate Ġvar Ġtab Type face : ĠType face ? Ġ= Ġnull ĊĠĠĠ Ġprivate Ġvar Ġtab Type face Style Ġ= ĠType face . BOLD ĊĠĠĠ Ġprivate Ġvar Ġlast Scroll X Ġ= Ġ 0 ĊĠĠĠ Ġvar Ġtab Background Ġ= ĠR . drawable . background _ tab ĊĠĠĠ Ġprivate Ġvar Ġlocale : ĠLocale ? Ġ= Ġnull ĊĠĠĠ Ġfun Ġset ViewPager ( pager : ĠView Pager ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . pager Ġ= Ġpager ĊĠĠĠĠĠĠĠ ĠcheckNotNull ( pager . adapter ) Ġ{ Ġ" ViewPager Ġdoes Ġnot Ġhave Ġadapter Ġinstance ." Ġ} ĊĠĠĠĠĠĠĠ Ġpager . setOn Page ChangeListener ( page Listener ) ĊĠĠĠĠĠĠĠ Ġnotify DataSet Changed () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset On Page ChangeListener ( listener : ĠView Pager . On Page ChangeListener ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġdelegate Page Listener Ġ= Ġlistener ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġnotify DataSet Changed () Ġ{ ĊĠĠĠĠĠĠĠ Ġtabs Container . removeAll Views () ĊĠĠĠĠĠĠĠ Ġtab Count Ġ= Ġpager !!. adapter !!. count ĊĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġ 0 Ġuntil Ġtab Count ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( pager !!. adapter Ġis ĠIcon Tab Provider ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadd Icon Tab ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġi , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( pager !!. adapter Ġas ĠIcon Tab Provider ?) !!. getPage Icon Res Id ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġi ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadd Text Tab ( i , Ġpager !!. adapter !!. getPage Title ( i ). toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġupdate Tab Styles () ĊĠĠĠĠĠĠĠ Ġview Tree Observer . add On Global Layout Listener ( object Ġ: ĠView Tree Observer . On Global Layout Listener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ@ Suppress Lint (" New Api ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Global Layout () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( Build . VERSION . SDK _ INT Ġ< ĠBuild . VERSION _ CODES . J EL LY _ BE AN ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġview Tree Observer . remove Global On Layout Listener ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġview Tree Observer . remove On Global Layout Listener ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcurrent Position Ġ= Ġpager !!. currentItem ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscroll To Child ( current Position , Ġ 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġadd Text Tab ( position : ĠInt , Ġtitle : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtab Ġ= ĠTextView ( context ) ĊĠĠĠĠĠĠĠ Ġtab . text Ġ= Ġtitle ĊĠĠĠĠĠĠĠ Ġtab . gravity Ġ= ĠGr avity . CENTER ĊĠĠĠĠĠĠĠ Ġtab . set Single Line () ĊĠĠĠĠĠĠĠ Ġadd Tab ( position , Ġtab ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġadd Icon Tab ( position : ĠInt , Ġres Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtab Ġ= ĠImage Button ( context ) ĊĠĠĠĠĠĠĠ Ġtab . setImage Resource ( res Id ) ĊĠĠĠĠĠĠĠ Ġadd Tab ( position , Ġtab ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġadd Tab ( position : ĠInt , Ġtab : ĠView ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtab . is Focus able Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġtab . setOnClickListener Ġ{ Ġpager !!. currentItem Ġ= Ġposition Ġ} ĊĠĠĠĠĠĠĠ Ġtab . set Padding ( tab Padding , Ġ 0 , Ġtab Padding , Ġ 0 ) ĊĠĠĠĠĠĠĠ Ġtabs Container . addView ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtab , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġposition , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( should Expand ) Ġexpanded Tab LayoutParams Ġelse Ġdefault Tab LayoutParams ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġupdate Tab Styles () Ġ{ ĊĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġ 0 Ġuntil Ġtab Count ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġv Ġ= Ġtabs Container . getChild At ( i ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġv . setBackground Resource ( tab Background ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( v Ġis ĠTextView ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtab Ġ= Ġv ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtab . setText Size ( Typed Value . COMPLEX _ UNIT _ PX , Ġtab Text Size . toFloat ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtab . setType face ( tab Type face , Ġtab Type face Style ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtab . setTextColor ( tab TextColor ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġset All Caps () Ġis Ġonly Ġavailable Ġfrom ĠAPI Ġ 1 4 , Ġso Ġthe Ġupper Ġcase Ġis Ġmade Ġmanually Ġif Ġwe Ġare Ġon Ġa ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġpre - ICS - build ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( is Text All Caps ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( Build . VERSION . SDK _ INT Ġ>= ĠBuild . VERSION _ CODES . ICE _ CRE AM _ S AND W ICH ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtab . is All Caps Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtab . text Ġ= Ġtab . text . toString (). toUpperCase ( locale !! ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġscroll To Child ( position : ĠInt , Ġoffset : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( tab Count Ġ== Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġvar Ġnew Scroll X Ġ= Ġtabs Container . getChild At ( position ). left Ġ+ Ġoffset ĊĠĠĠĠĠĠĠ Ġif Ġ( position Ġ> Ġ 0 Ġ|| Ġoffset Ġ> Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnew Scroll X Ġ-= Ġscroll Offset ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġif Ġ( new Scroll X Ġ!= Ġlast Scroll X ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlast Scroll X Ġ= Ġnew Scroll X ĊĠĠĠĠĠĠĠĠĠĠĠ Ġscroll To ( new Scroll X , Ġ 0 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Draw ( canvas : ĠCanvas ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Draw ( canvas ) ĊĠĠĠĠĠĠĠ Ġif Ġ( isIn Edit Mode Ġ|| Ġtab Count Ġ== Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġheight Ġ= Ġheight ĊĊĠĠĠĠĠĠĠ Ġ// Ġdraw Ġindicator Ġline ĊĠĠĠĠĠĠĠ Ġrect Paint . color Ġ= Ġindicator Color ĊĊĠĠĠĠĠĠĠ Ġ// Ġdefault : Ġline Ġbelow Ġcurrent Ġtab ĊĠĠĠĠĠĠĠ Ġval Ġcurrent Tab Ġ= Ġtabs Container . getChild At ( current Position ) ĊĠĠĠĠĠĠĠ Ġvar Ġline Left Ġ= Ġcurrent Tab . left . toFloat () ĊĠĠĠĠĠĠĠ Ġvar Ġline Right Ġ= Ġcurrent Tab . right . toFloat () ĊĊĠĠĠĠĠĠĠ Ġ// Ġif Ġthere Ġis Ġan Ġoffset , Ġstart Ġinterpol ating Ġleft Ġand Ġright Ġcoordinates Ġbetween Ġcurrent Ġand Ġnext Ġtab ĊĠĠĠĠĠĠĠ Ġif Ġ( current Position Offset Ġ> Ġ 0 f Ġ&& Ġcurrent Position Ġ< Ġtab Count Ġ- Ġ 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġnext Tab Ġ= Ġtabs Container . getChild At ( current Position Ġ+ Ġ 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġnext Tab Left Ġ= Ġnext Tab . left . toFloat () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġnext Tab Right Ġ= Ġnext Tab . right . toFloat () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġline Left Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcurrent Position Offset Ġ* Ġnext Tab Left Ġ+ Ġ( 1 f Ġ- Ġcurrent Position Offset ) Ġ* Ġline Left ĊĠĠĠĠĠĠĠĠĠĠĠ Ġline Right Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcurrent Position Offset Ġ* Ġnext Tab Right Ġ+ Ġ( 1 f Ġ- Ġcurrent Position Offset ) Ġ* Ġline Right ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcanvas . draw Rect ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġline Left , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġheight Ġ- Ġindicator Height . toFloat (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġline Right , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġheight . toFloat (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrect Paint ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġ// Ġdraw Ġunderline ĊĠĠĠĠĠĠĠ Ġrect Paint . color Ġ= Ġunderline Color ĊĠĠĠĠĠĠĠ Ġcanvas . draw Rect ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 0 f , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġheight Ġ- Ġunderline Height . toFloat (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtabs Container . width . toFloat (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġheight . toFloat (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrect Paint ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġ// Ġdraw Ġdivider ĊĠĠĠĠĠĠĠ Ġdivider Paint . color Ġ= Ġdivider Color ĊĠĠĠĠĠĠĠ Ġfor Ġ( i Ġin Ġ 0 Ġuntil Ġtab Count Ġ- Ġ 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtab Ġ= Ġtabs Container . getChild At ( i ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcanvas . draw Line ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtab . right . toFloat (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdivider Padding . toFloat (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtab . right . toFloat (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġheight Ġ- Ġdivider Padding . toFloat (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdivider Paint ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġinner Ġclass ĠPage Listener Ġ: ĠView Pager . On Page ChangeListener Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Page Sc rolled ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġposition : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġposition Offset : ĠFloat , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġposition Offset Pixels : ĠInt ĊĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcurrent Position Ġ= Ġposition ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcurrent Position Offset Ġ= Ġposition Offset ĊĠĠĠĠĠĠĠĠĠĠĠ Ġscroll To Child ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġposition , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( position Offset Ġ* Ġtabs Container . getChild At ( position ). width ). toInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġinvalidate () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( delegate Page Listener Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdelegate Page Listener !!. on Page Sc rolled ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġposition , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġposition Offset , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġposition Offset Pixels ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Page Scroll StateChanged ( state : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( state Ġ== ĠView Pager . SCROLL _ STATE _ IDLE ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscroll To Child ( pager !!. currentItem , Ġ 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( delegate Page Listener Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdelegate Page Listener !!. on Page Scroll StateChanged ( state ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Page Selected ( position : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( delegate Page Listener Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdelegate Page Listener !!. on Page Selected ( position ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Indicator Color ( indicator Color : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . indicator Color Ġ= Ġindicator Color ĊĠĠĠĠĠĠĠ Ġinvalidate () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Indicator Color Resource ( res Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġindicator Color Ġ= Ġresources . getColor ( res Id ) ĊĠĠĠĠĠĠĠ Ġinvalidate () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Indicator Color (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġindicator Color ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Indicator Height ( indicator Line Height Px : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġindicator Height Ġ= Ġindicator Line Height Px ĊĠĠĠĠĠĠĠ Ġinvalidate () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Indicator Height (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġindicator Height ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Underline Color ( underline Color : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . underline Color Ġ= Ġunderline Color ĊĠĠĠĠĠĠĠ Ġinvalidate () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Underline Color Resource ( res Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġunderline Color Ġ= Ġresources . getColor ( res Id ) ĊĠĠĠĠĠĠĠ Ġinvalidate () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Underline Color (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġunderline Color ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Divider Color ( divider Color : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . divider Color Ġ= Ġdivider Color ĊĠĠĠĠĠĠĠ Ġinvalidate () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Divider Color Resource ( res Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġdivider Color Ġ= Ġresources . getColor ( res Id ) ĊĠĠĠĠĠĠĠ Ġinvalidate () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Divider Color (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġdivider Color ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Underline Height ( underline Height Px : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġunderline Height Ġ= Ġunderline Height Px ĊĠĠĠĠĠĠĠ Ġinvalidate () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Underline Height (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġunderline Height ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Divider Padding ( divider Padding Px : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġdivider Padding Ġ= Ġdivider Padding Px ĊĠĠĠĠĠĠĠ Ġinvalidate () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Divider Padding (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġdivider Padding ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Scroll Offset ( scroll Offset Px : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġscroll Offset Ġ= Ġscroll Offset Px ĊĠĠĠĠĠĠĠ Ġinvalidate () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Scroll Offset (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġscroll Offset ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Should Expand ( should Expand : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . should Expand Ġ= Ġshould Expand ĊĠĠĠĠĠĠĠ Ġrequest Layout () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġget Should Expand (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġshould Expand ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset All Caps ( text All Caps : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġis Text All Caps Ġ= Ġtext All Caps ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġvar Ġtext Size : ĠInt ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġtab Text Size ĊĠĠĠĠĠĠĠ Ġset ( text Size Px ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtab Text Size Ġ= Ġtext Size Px ĊĠĠĠĠĠĠĠĠĠĠĠ Ġupdate Tab Styles () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset TextColor Resource ( res Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtab TextColor Ġ= Ġresources . getColor ( res Id ) ĊĠĠĠĠĠĠĠ Ġupdate Tab Styles () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġvar ĠtextColor : ĠInt ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġtab TextColor ĊĠĠĠĠĠĠĠ Ġset ( textColor ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtab TextColor Ġ= ĠtextColor ĊĠĠĠĠĠĠĠĠĠĠĠ Ġupdate Tab Styles () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Type face ( type face : ĠType face ?, Ġstyle : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtab Type face Ġ= Ġtype face ĊĠĠĠĠĠĠĠ Ġtab Type face Style Ġ= Ġstyle ĊĠĠĠĠĠĠĠ Ġupdate Tab Styles () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġvar Ġtab Padding Left Right : ĠInt ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġtab Padding ĊĠĠĠĠĠĠĠ Ġset ( padding Px ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtab Padding Ġ= Ġpadding Px ĊĠĠĠĠĠĠĠĠĠĠĠ Ġupdate Tab Styles () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġpublic Ġoverride Ġfun Ġon Restore InstanceState ( state : ĠParcel able ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsaved State Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstate Ġas ĠSaved State ĊĠĠĠĠĠĠĠ Ġsuper . on Restore InstanceState ( saved State . super State ) ĊĠĠĠĠĠĠĠ Ġcurrent Position Ġ= Ġsaved State . current Position ĊĠĠĠĠĠĠĠ Ġrequest Layout () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġpublic Ġoverride Ġfun Ġon Save InstanceState (): ĠParcel able ? Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġsuper State Ġ= Ġsuper . on Save InstanceState () ĊĠĠĠĠĠĠĠ Ġval Ġsaved State Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSaved State ( super State ) ĊĠĠĠĠĠĠĠ Ġsaved State . current Position Ġ= Ġcurrent Position ĊĠĠĠĠĠĠĠ Ġreturn Ġsaved State ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinternal Ġclass ĠSaved State Ġ: ĠBase Saved State Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġcurrent Position Ġ= Ġ 0 ĊĊĠĠĠĠĠĠĠ Ġconstructor ( super State : ĠParcel able ?) Ġ: Ġsuper ( super State ) Ġ{} ĊĠĠĠĠĠĠĠ Ġprivate Ġconstructor (` in `: ĠParcel ) Ġ: Ġsuper (` in `) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcurrent Position Ġ= Ġ` in `. readInt () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun ĠwriteTo Parcel ( dest : ĠParcel , Ġflags : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . writeTo Parcel ( dest , Ġflags ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdest . writeInt ( current Position ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠCRE ATOR : ĠParcel able . Creator < Saved State ?> Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġobject Ġ: ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠParcel able . Creator < Saved State ?> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġcreate From Parcel (` in `: ĠParcel ): ĠSaved State ? Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠSaved State (` in `) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġnew Array ( size : ĠInt ): ĠArray < Saved State ?> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠarrayOf Null s ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsize ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġ@ formatter : off ĊĠĠĠĠĠĠĠ Ġprivate Ġval ĠATTR S Ġ= Ġint ArrayOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġandroid . R . attr . text Size , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġandroid . R . attr . textColor ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġis Fill Viewport Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġset Will Not Draw ( false ) ĊĠĠĠĠĠĠĠ Ġtabs Container Ġ= ĠLinearLayout ( context ) ĊĠĠĠĠĠĠĠ Ġtabs Container . orientation Ġ= ĠLinearLayout . HORIZONTAL ĊĠĠĠĠĠĠĠ Ġtabs Container . layout Params Ġ= ĠLayout Params ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLayout Params . MATCH _ PARENT , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLayout Params . MATCH _ PARENT ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġadd View ( tabs Container ) ĊĠĠĠĠĠĠĠ Ġval Ġdm Ġ= Ġresources . display Metrics ĊĠĠĠĠĠĠĠ Ġscroll Offset Ġ= ĠTyped Value . apply Dimension ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTyped Value . COMPLEX _ UNIT _ DIP , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscroll Offset . toFloat (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdm ĊĠĠĠĠĠĠĠ Ġ). toInt () ĊĠĠĠĠĠĠĠ Ġindicator Height Ġ= ĠTyped Value . apply Dimension ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTyped Value . COMPLEX _ UNIT _ DIP , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġindicator Height . toFloat (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdm ĊĠĠĠĠĠĠĠ Ġ). toInt () ĊĠĠĠĠĠĠĠ Ġunderline Height Ġ= ĠTyped Value . apply Dimension ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTyped Value . COMPLEX _ UNIT _ DIP , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġunderline Height . toFloat (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdm ĊĠĠĠĠĠĠĠ Ġ). toInt () ĊĠĠĠĠĠĠĠ Ġdivider Padding Ġ= ĠTyped Value . apply Dimension ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTyped Value . COMPLEX _ UNIT _ DIP , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdivider Padding . toFloat (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdm ĊĠĠĠĠĠĠĠ Ġ). toInt () ĊĠĠĠĠĠĠĠ Ġtab Padding Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTyped Value . apply Dimension ( Typed Value . COMPLEX _ UNIT _ DIP , Ġtab Padding . toFloat (), Ġdm ). toInt () ĊĠĠĠĠĠĠĠ Ġdivider Width Ġ= ĠTyped Value . apply Dimension ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTyped Value . COMPLEX _ UNIT _ DIP , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdivider Width . toFloat (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdm ĊĠĠĠĠĠĠĠ Ġ). toInt () ĊĠĠĠĠĠĠĠ Ġtab Text Size Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTyped Value . apply Dimension ( Typed Value . COMPLEX _ UNIT _ SP , Ġtab Text Size . toFloat (), Ġdm ). toInt () ĊĊĠĠĠĠĠĠĠ Ġ// Ġget Ġsystem Ġattrs Ġ( android : text Size Ġand Ġandroid : textColor ) ĊĠĠĠĠĠĠĠ Ġvar Ġa Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . obtain Styled Attributes ( attrs , ĠATTR S ) ĊĠĠĠĠĠĠĠ Ġtab Text Size Ġ= Ġa . get Dimension Pixel Size ( 0 , Ġtab Text Size ) ĊĠĠĠĠĠĠĠ Ġtab TextColor Ġ= ĠR . color . color Accent ĊĠĠĠĠĠĠĠ Ġa . recycle () ĊĊĠĠĠĠĠĠĠ Ġ// Ġget Ġcustom Ġattrs ĊĠĠĠĠĠĠĠ Ġa Ġ= Ġcontext . obtain Styled Attributes ( attrs , ĠR . style able . Pager Sl iding Tab Strip ) ĊĠĠĠĠĠĠĠ Ġindicator Color Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġa . getColor ( R . style able . Pager Sl iding Tab Strip _ page Slider Indicator Color , Ġindicator Color ) ĊĠĠĠĠĠĠĠ Ġunderline Color Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġa . getColor ( R . style able . Pager Sl iding Tab Strip _ page Slider Underline Color , Ġunderline Color ) ĊĠĠĠĠĠĠĠ Ġdivider Color Ġ= Ġa . getColor ( R . style able . Pager Sl iding Tab Strip _ page Slider Divider Color , Ġdivider Color ) ĊĠĠĠĠĠĠĠ Ġindicator Height Ġ= Ġa . get Dimension Pixel Size ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . style able . Pager Sl iding Tab Strip _ page Slider Indicator Height , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġindicator Height ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġunderline Height Ġ= Ġa . get Dimension Pixel Size ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . style able . Pager Sl iding Tab Strip _ page Slider Underline Height , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġunderline Height ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġdivider Padding Ġ= Ġa . get Dimension Pixel Size ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . style able . Pager Sl iding Tab Strip _ page Slider Divider Padding , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdivider Padding ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġtab Padding Ġ= Ġa . get Dimension Pixel Size ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . style able . Pager Sl iding Tab Strip _ page Slider Tab Padding Left Right , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtab Padding ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġtab Background Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġa . getResource Id ( R . style able . Pager Sl iding Tab Strip _ page Slider Tab Background , Ġtab Background ) ĊĠĠĠĠĠĠĠ Ġshould Expand Ġ= Ġa . getBoolean ( R . style able . Pager Sl iding Tab Strip _ page Slider Should Expand , Ġshould Expand ) ĊĠĠĠĠĠĠĠ Ġscroll Offset Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġa . get Dimension Pixel Size ( R . style able . Pager Sl iding Tab Strip _ page Slider Scroll Offset , Ġscroll Offset ) ĊĠĠĠĠĠĠĠ Ġis Text All Caps Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġa . getBoolean ( R . style able . Pager Sl iding Tab Strip _ page Slider Text All Caps , Ġis Text All Caps ) ĊĠĠĠĠĠĠĠ Ġa . recycle () ĊĠĠĠĠĠĠĠ Ġrect Paint Ġ= ĠPaint () ĊĠĠĠĠĠĠĠ Ġrect Paint . is Anti Alias Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġrect Paint . style Ġ= ĠPaint . Style . FILL ĊĠĠĠĠĠĠĠ Ġdivider Paint Ġ= ĠPaint () ĊĠĠĠĠĠĠĠ Ġdivider Paint . is Anti Alias Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġdivider Paint . stroke Width Ġ= Ġdivider Width . toFloat () ĊĠĠĠĠĠĠĠ Ġdefault Tab LayoutParams Ġ= ĠLinearLayout . LayoutParams ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLayout Params . WRAP _ CONTENT , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLayout Params . MATCH _ PARENT ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġexpanded Tab LayoutParams Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLinearLayout . LayoutParams ( 0 , ĠLayout Params . MATCH _ PARENT , Ġ 1 . 0 f ) ĊĠĠĠĠĠĠĠ Ġif Ġ( locale Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlocale Ġ= Ġresources . configuration . locale ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }