package Ġca . warp 7 . android . sco uting . ui . toggle Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . os . Build Ċ import Ġandroid . text . TextUtils Ċ import Ġandroid . util . Attribute Set Ċ import Ġandroid . util . Typed Value Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . LinearLayout Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . annotation . Requires Api Ċ import Ġandroidx . core . content . Context Compat Ċ import Ġandroidx . core . view . View Compat Ċ import Ġca . warp 7 . android . sco uting . R Ċ import Ġjava . util .* Ċ Ċ abstract Ġclass ĠBase Toggle Switch Ġ: ĠLinearLayout , ĠToggle Switch Button . Listener Ġ{ ĊĊĊĠĠĠ Ġ/* ĊĠĠĠĠĠĠ ĠDefault ĠValues ĊĠĠĠĠ Ġ*/ ĊĊĠĠĠ Ġcompanion Ġobject ĠDefault Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static Ġprivate Ġval ĠBORDER _ RADIUS _ DP ĠĠĠĠĠĠĠĠĠĠĠ Ġ= Ġ 4 ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static Ġprivate Ġval ĠBORDER _ WIDTH ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ= Ġ 0 ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static Ġprivate Ġval ĠCHECK ED _ BACKGROUND _ COLOR ĠĠĠ Ġ= ĠR . color . blue ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static Ġprivate Ġval ĠCHECK ED _ BORDER _ COLOR ĠĠĠĠĠĠĠ Ġ= ĠR . color . blue ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static Ġprivate Ġval ĠCHECK ED _ TEXT _ COLOR ĠĠĠĠĠĠĠĠĠ Ġ= Ġandroid . R . color . white ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static Ġprivate Ġval ĠEMPTY _ TO GGLE _ DE COR ATOR ĠĠĠĠĠ Ġ= Ġobject : ĊĠĠĠĠĠĠĠĠĠĠĠ ĠToggle Switch Button . Toggle Switch Button Decorator Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġdecor ate ( toggle Switch Button : ĠToggle Switch Button , Ġview : ĠView , Ġposition : ĠInt ) Ġ{} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static Ġprivate Ġval ĠENABLE D ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ= Ġtrue ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static Ġprivate Ġval ĠLAY OUT _ ID ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ= ĠR . layout . toggle _ switch _ button _ view ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static Ġprivate Ġval ĠLAY OUT _ HEIGHT ĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ= ĠLinearLayout . LayoutParams . WRAP _ CONTENT ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static Ġprivate Ġval ĠLAY OUT _ WIDTH ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ= ĠLinearLayout . LayoutParams . WRAP _ CONTENT ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static Ġprivate Ġval ĠNUM _ ENTR IES ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ= Ġ 0 ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static Ġprivate Ġval ĠSE PAR ATOR _ COLOR ĠĠĠĠĠĠĠĠĠĠĠĠ Ġ= ĠR . color . gray _ very _ light ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static Ġprivate Ġval ĠSE PAR ATOR _ VISIBLE ĠĠĠĠĠĠĠĠĠĠ Ġ= Ġtrue ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static Ġprivate Ġval ĠTEXT _ SIZE ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ= Ġ 1 6 f ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static Ġprivate Ġval ĠTO GGLE _ DISTANCE ĠĠĠĠĠĠĠĠĠĠĠĠ Ġ= Ġ 0 f ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static Ġprivate Ġval ĠTO GGLE _ E LE V ATION ĠĠĠĠĠĠĠĠĠĠĠ Ġ= Ġ 0 f ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static Ġprivate Ġval ĠTO GGLE _ HEIGHT ĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ= Ġ 3 8 f ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static Ġprivate Ġval ĠTO GGLE _ WIDTH ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ= Ġ 7 2 f ĊĊĠĠĠĠĠĠĠ Ġ@ Jvm Static Ġprivate Ġval ĠUN CHECK ED _ BACKGROUND _ COLOR Ġ Ġ= ĠR . color . gray _ light ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static Ġprivate Ġval ĠUN CHECK ED _ BORDER _ COLOR ĠĠĠĠĠ Ġ= ĠR . color . gray _ light ĊĠĠĠĠĠĠĠ Ġ@ Jvm Static Ġprivate Ġval ĠUN CHECK ED _ TEXT _ COLOR ĠĠĠĠĠĠĠ Ġ= ĠR . color . gray ĊĠĠĠ Ġ} ĊĊĊĊĊĠĠĠ Ġ/* ĊĠĠĠĠĠĠ ĠInstance ĠVariables ĊĠĠĠĠ Ġ*/ ĊĊĊĠĠĠ Ġvar Ġchecked BackgroundColor : ĠĠĠĠĠ ĠInt ĊĠĠĠ Ġvar Ġchecked BorderColor : ĠĠĠĠĠĠĠĠĠ ĠInt ĊĠĠĠ Ġvar Ġchecked TextColor : ĠĠĠĠĠĠĠĠĠĠĠ ĠInt ĊĊĠĠĠ Ġvar ĠborderRadius : ĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFloat ĊĠĠĠ Ġvar ĠborderWidth : ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFloat ĊĊĠĠĠ Ġvar Ġunchecked BackgroundColor : ĠĠĠ ĠInt ĊĠĠĠ Ġvar Ġunchecked BorderColor : ĠĠĠĠĠĠĠ ĠInt ĊĠĠĠ Ġvar Ġunchecked TextColor : ĠĠĠĠĠĠĠĠĠ ĠInt ĊĊĠĠĠ Ġvar Ġseparator Color : ĠĠĠĠĠĠĠĠĠĠĠĠ ĠInt ĊĠĠĠ Ġvar Ġseparator Visible Ġ= ĠSE PAR ATOR _ VISIBLE ĊĊĠĠĠ Ġvar Ġtext Size : ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFloat ĊĊĠĠĠ Ġvar Ġtoggle Elevation Ġ= ĠTO GGLE _ E LE V ATION ĊĠĠĠ Ġvar Ġtoggle Margin : ĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFloat ĊĠĠĠ Ġvar Ġtoggle Height : ĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFloat ĊĠĠĠ Ġvar Ġtoggle Width : ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠFloat ĊĊĠĠĠ Ġvar Ġlayout Height Ġ= ĠLAY OUT _ HEIGHT ĊĠĠĠ Ġvar Ġlayout Width Ġ= ĠLAY OUT _ WIDTH ĊĊĠĠĠ Ġvar Ġlayout Id Ġ= ĠLAY OUT _ ID ĊĠĠĠ Ġvar Ġnum Entries Ġ= ĠNUM _ ENTR IES ĊĊĠĠĠ Ġvar Ġprepare Decorator : ĠToggle Switch Button . Toggle Switch Button Decorator Ġ= ĊĠĠĠĠĠĠĠ ĠEMPTY _ TO GGLE _ DE COR ATOR ĊĠĠĠ Ġvar Ġchecked Decorator : ĠĠĠ ĠToggle Switch Button . View Decorator ? ĠĠĠ Ġ= Ġnull ĊĠĠĠ Ġvar Ġunchecked Decorator : Ġ ĠToggle Switch Button . View Decorator ? ĠĠĠ Ġ= Ġnull ĊĊĠĠĠ Ġvar Ġbuttons Ġ= ĠArrayList < Toggle Switch Button >() ĊĊĠĠĠ Ġ/* ĊĠĠĠĠĠĠ ĠConstructors ĊĠĠĠĠ Ġ*/ ĊĊĠĠĠ Ġconstructor ( context : ĠContext ) Ġ: Ġsuper ( context ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// ĠSetup ĠView ĊĠĠĠĠĠĠĠ ĠsetUp View () ĊĊĠĠĠĠĠĠĠ Ġ// ĠSet Ġdefault Ġparams ĊĠĠĠĠĠĠĠ Ġchecked BackgroundColor ĠĠĠĠĠĠ Ġ= ĠContext Compat . getColor ( context , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠCHECK ED _ BACKGROUND _ COLOR ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġchecked BorderColor ĠĠĠĠĠĠĠĠĠĠ Ġ= ĠContext Compat . getColor ( context , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠCHECK ED _ BORDER _ COLOR ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġchecked TextColor ĠĠĠĠĠĠĠĠĠĠĠĠ Ġ= ĠContext Compat . getColor ( context , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠCHECK ED _ TEXT _ COLOR ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ ĠborderRadius ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ= Ġdp 2 px ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠBORDER _ RADIUS _ DP . toFloat () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ ĠborderWidth ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ= Ġdp 2 px ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠBORDER _ WIDTH . toFloat () ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġunchecked BackgroundColor ĠĠĠĠ Ġ= ĠContext Compat . getColor ( context , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUN CHECK ED _ BACKGROUND _ COLOR ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġunchecked BorderColor ĠĠĠĠĠĠĠĠ Ġ= ĠContext Compat . getColor ( context , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUN CHECK ED _ BORDER _ COLOR ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġunchecked TextColor ĠĠĠĠĠĠĠĠĠĠ Ġ= ĠContext Compat . getColor ( context , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠUN CHECK ED _ TEXT _ COLOR ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġseparator Color ĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ= ĠContext Compat . getColor ( context , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSE PAR ATOR _ COLOR ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġtext Size ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ= Ġdp 2 px ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTEXT _ SIZE ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġtoggle Margin ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ= Ġdp 2 px ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠgetContext (), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTO GGLE _ DISTANCE ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġtoggle Height ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ= Ġdp 2 px ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠgetContext (), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTO GGLE _ HEIGHT ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġtoggle Width ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ= Ġdp 2 px ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠgetContext (), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠTO GGLE _ WIDTH ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġconstructor ( context : ĠContext , Ġattrs : ĠAttributeSet ?) Ġ: Ġsuper Ġ( context , Ġattrs ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġif Ġ( attrs Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠsetUp View () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġattributes Ġ= Ġcontext . obtain Styled Attributes ( attrs , ĠR . style able . Base Toggle Switch , Ġ 0 , Ġ 0 ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchecked BackgroundColor Ġ= Ġattributes . getColor ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . style able . Base Toggle Switch _ checked BackgroundColor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠContext Compat . getColor ( context , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCHECK ED _ BACKGROUND _ COLOR ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ)) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchecked BorderColor Ġ= Ġattributes . getColor ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . style able . Base Toggle Switch _ checked BorderColor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠContext Compat . getColor ( context , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCHECK ED _ BORDER _ COLOR ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ)) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchecked TextColor Ġ= Ġattributes . getColor ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . style able . Base Toggle Switch _ checked TextColor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠContext Compat . getColor ( context , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠCHECK ED _ TEXT _ COLOR ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ)) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠborderRadius Ġ= Ġattributes . get Dimension Pixel Size ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . style able . Base Toggle Switch _ border Radius , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdp 2 px ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBORDER _ RADIUS _ DP . toFloat () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ). toInt ()). toFloat () ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠborderWidth Ġ= Ġattributes . get Dimension Pixel Size ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . style able . Base Toggle Switch _ border Width , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdp 2 px ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBORDER _ WIDTH . toFloat () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ). toInt ()). toFloat () ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġis Enabled Ġ= Ġattributes . getBoolean ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . style able . Base Toggle Switch _ android _ enabled , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠENABLE D ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġunchecked BackgroundColor Ġ= Ġattributes . getColor ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . style able . Base Toggle Switch _ unchecked BackgroundColor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠContext Compat . getColor ( context , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠUN CHECK ED _ BACKGROUND _ COLOR ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ)) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġunchecked BorderColor Ġ= Ġattributes . getColor ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . style able . Base Toggle Switch _ unchecked BorderColor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠContext Compat . getColor ( context , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠUN CHECK ED _ BORDER _ COLOR ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ)) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġunchecked TextColor Ġ= Ġattributes . getColor ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . style able . Base Toggle Switch _ unchecked TextColor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠContext Compat . getColor ( context , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠUN CHECK ED _ TEXT _ COLOR ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ)) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġseparator Color Ġ= Ġattributes . getColor ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . style able . Base Toggle Switch _ separator Color , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠContext Compat . getColor ( context , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSE PAR ATOR _ COLOR ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ)) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġseparator Visible Ġ= Ġattributes . getBoolean ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . style able . Base Toggle Switch _ separator Visible , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠSE PAR ATOR _ VISIBLE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext Size Ġ= Ġattributes . get Dimension Pixel Size ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . style able . Base Toggle Switch _ android _ text Size , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdp 2 px ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTEXT _ SIZE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ). toInt ()). toFloat () ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoggle Elevation Ġ= Ġattributes . get Dimension Pixel Size ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . style able . Base Toggle Switch _ elevation , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdp 2 px ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTO GGLE _ E LE V ATION ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ). toInt ()). toFloat () ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoggle Margin Ġ= Ġattributes . get Dimension ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . style able . Base Toggle Switch _ toggle Margin , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdp 2 px ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠgetContext (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTO GGLE _ DISTANCE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoggle Height Ġ= Ġattributes . get Dimension ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . style able . Base Toggle Switch _ toggle Height , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdp 2 px ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠgetContext (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTO GGLE _ HEIGHT ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoggle Width Ġ= Ġattributes . get Dimension ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . style able . Base Toggle Switch _ toggle Width , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdp 2 px ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠgetContext (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠTO GGLE _ WIDTH ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlayout Height Ġ= Ġattributes . get Layout Dimension ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . style able . Base Toggle Switch _ android _ layout _ height , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLAY OUT _ HEIGHT ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlayout Width Ġ= Ġattributes . get Layout Dimension ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠR . style able . Base Toggle Switch _ android _ layout _ width , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLAY OUT _ WIDTH ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġentries ĠĠĠĠĠĠĠĠ Ġ= Ġattributes . getText Array ( R . style able . Base Toggle Switch _ android _ entries ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( entries Ġ== Ġnull Ġ|| Ġentries . isEmpty ()) Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġentries List Ġ= ĠArrayList < String >() ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtext Toggle Left Ġ Ġ= Ġattributes . getString ( R . style able . Base Toggle Switch _ text Toggle Left ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtext Toggle Right Ġ= Ġattributes . getString ( R . style able . Base Toggle Switch _ text Toggle Right ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! TextUtils . isEmpty ( text Toggle Left ) Ġ&& Ġ! TextUtils . isEmpty ( text Toggle Right )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġentries List . add ( text Toggle Left !! ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtext Toggle Center Ġ Ġ= Ġattributes . getString ( R . style able . Base Toggle Switch _ text Toggle Center ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! TextUtils . isEmpty ( text Toggle Center )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġentries List . add ( text Toggle Center !! ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġentries List . add ( text Toggle Right !! ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Entries ( entries List ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Entries ( entries ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfinally Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġattributes . recycle () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠRuntimeException (" Attribute Set Ġis Ġnull !") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ/* ĊĠĠĠĠĠĠĠ ĠOver ro de Ġinstance Ġmethods ĊĠĠĠ Ġ*/ ĊĊĠĠĠ Ġoverride Ġfun Ġon Attached To Window () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Attached To Window () ĊĊĠĠĠĠĠĠĠ Ġfor Ġ( button Ġin Ġbuttons ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! is Full Width ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbutton . layout Params . width Ġ= Ġtoggle Width . toInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! is Full Height ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbutton . layout Params . height Ġ= Ġtoggle Height . toInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfinal Ġoverride Ġfun Ġset Enabled ( enabled : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . setEnabled ( enabled ) ĊĠĠĠĠĠĠĠ Ġalpha Ġ= Ġif Ġ( enabled ) Ġ 1 f Ġelse Ġ. 6 f ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Requires Api ( Build . VERSION _ CODES . LO L LI POP ) ĊĠĠĠ Ġfinal Ġoverride Ġfun Ġset Elevation ( elevation : ĠFloat ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . set Elevation ( elevation ) ĊĠĠĠĠĠĠĠ Ġif Ġ( elevation Ġ> Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġclip To Padding Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġset Padding ( elevation . toInt (), Ġelevation . toInt (), Ġelevation . toInt (), Ġelevation . toInt ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġclip To Padding Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġset Padding ( 0 , Ġ 0 , Ġ 0 , Ġ 0 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġfor Ġ( button Ġin Ġbuttons ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠView Compat . set Elevation ( button , Ġelevation ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ/* ĊĠĠĠĠĠĠĠ ĠPublic Ġinstance Ġmethods ĊĠĠĠ Ġ*/ ĊĊĠĠĠ Ġfun Ġset Entries ( string Array Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġset Entries ( resources . getString Array ( string Array Id )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Entries ( entries : ĠArray < String >) Ġ{ ĊĠĠĠĠĠĠĠ Ġset Entries ( entries . toList ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Entries ( entries Ġ: ĠArray < CharSequence >) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġentries List Ġ= ĠArrayList < String >() ĊĠĠĠĠĠĠĠ Ġfor Ġ( entry Ġin Ġentries ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġentries List . add ( entry . toString ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġset Entries ( entries List ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Entries ( entries Ġ: ĠList < String >) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġprepare Decorator Ġ= Ġobject : ĊĠĠĠĠĠĠĠĠĠĠĠ ĠToggle Switch Button . Toggle Switch Button Decorator Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġdecor ate ( toggle Switch Button : ĠToggle Switch Button , Ġview : ĠView , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠtextView Ġ= Ġview . findViewById ( R . id . text _ view ) Ġas ĠTextView ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠtextView . text Ġ= Ġentries [ position ] ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠtextView . setText Size ( Typed Value . COMPLEX _ UNIT _ PX , Ġtext Size ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġchecked Decorator Ġ= Ġobject : ĠToggle Switch Button . View Decorator Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġdecor ate ( view : ĠView , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠtextView Ġ= Ġview . findViewById ( R . id . text _ view ) Ġas ĠTextView ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠtextView . setTextColor ( checked TextColor ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġval Ġunchecked Decorator Ġ= Ġobject : ĠToggle Switch Button . View Decorator Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġdecor ate ( view : ĠView , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠtextView Ġ= Ġview . findViewById ( R . id . text _ view ) Ġas ĠTextView ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠtextView . setTextColor ( unchecked TextColor ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġset View ( R . layout . toggle _ switch _ button _ view , Ġentries . size , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprepare Decorator , Ġchecked Decorator , Ġunchecked Decorator ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset View ( layout Id : ĠInt , Ġnum Entries : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprepare Decorator : ĠToggle Switch Button . Toggle Switch Button Decorator ĊĠĠĠ Ġ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġset View ( layout Id , Ġnum Entries , Ġprepare Decorator , Ġnull , Ġnull ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset View ( layout Id : ĠInt , Ġnum Entries : ĠInt , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprepare Decorator : ĠToggle Switch Button . Toggle Switch Button Decorator , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchecked Decorator : ĠToggle Switch Button . View Decorator ?, ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġunchecked Decorator : ĠToggle Switch Button . View Decorator ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġremove All Views () ĊĠĠĠĠĠĠĠ Ġbuttons . clear () ĊĊĠĠĠĠĠĠĠ Ġthis . layout Id Ġ= Ġlayout Id ĊĠĠĠĠĠĠĠ Ġthis . num Entries Ġ= Ġnum Entries ĊĠĠĠĠĠĠĠ Ġthis . checked Decorator Ġ= Ġchecked Decorator ĊĠĠĠĠĠĠĠ Ġthis . unchecked Decorator Ġ= Ġunchecked Decorator ĊĊĠĠĠĠĠĠĠ Ġfor Ġ( index Ġin Ġ 0 .. num Entries Ġ- Ġ 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġposition Type Ġ= Ġget Position ( index , Ġnum Entries ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbutton Ġ= ĠToggle Switch Button ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext , Ġindex , Ġposition Type , Ġthis , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlayout Id , Ġprepare Decorator , Ġchecked Decorator , Ġunchecked Decorator , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġchecked BackgroundColor , Ġchecked BorderColor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠborderRadius , ĠborderWidth , Ġunchecked BackgroundColor , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġunchecked BorderColor , Ġseparator Color , Ġtoggle Margin . toInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbuttons . add ( button ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd View ( button ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġif Ġ( android . os . Build . VERSION . SDK _ INT Ġ>= Ġandroid . os . Build . VERSION _ CODES . LO L LI POP ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelevation Ġ= Ġtoggle Elevation ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġmanage Separator Vis ib l ity () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġre Draw () Ġ{ ĊĠĠĠĠĠĠĠ Ġset View ( layout Id , Ġnum Entries , Ġprepare Decorator , Ġchecked Decorator , Ġunchecked Decorator ) ĊĠĠĠĠĠĠĠ Ġon Red raw n () ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ/* ĊĠĠĠĠĠĠ ĠProtected Ġinstance Ġmethods ĊĠĠĠĠ Ġ*/ ĊĊĠĠĠ Ġprotected Ġabstract Ġfun Ġon Red raw n () ĊĊĠĠĠ Ġprotected Ġfun Ġmanage Separator Vis ib l ity () Ġ{ ĊĠĠĠĠĠĠĠ Ġfor Ġ(( index , Ġbutton ) Ġin Ġbuttons . with Index ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( separator Visible Ġ&& Ġindex Ġ< Ġbuttons . size Ġ- Ġ 1 Ġ&& Ġ! has Border () Ġ&& Ġ! are Toggle Separ ated ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbutton . set Separator Visibility ( button . isChecked Ġ== Ġbuttons [ index Ġ+ Ġ 1 ]. isChecked ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbutton . set Separator Visibility ( false ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/* ĊĠĠĠĠĠĠ ĠPrivate Ġinstance Ġmethods ĊĠĠĠĠ Ġ*/ ĊĊĠĠĠ Ġprivate Ġfun Ġare Toggle Separ ated () Ġ: ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġtoggle Margin Ġ> Ġ 0 ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġget Position ( index Ġ: ĠInt , Ġsize : ĠInt ) Ġ: ĠToggle Switch Button . Position Type Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( index Ġ== Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠToggle Switch Button . Position Type . LEFT ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġelse Ġif Ġ( index Ġ== Ġsize Ġ- Ġ 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠToggle Switch Button . Position Type . RIGHT ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠToggle Switch Button . Position Type . CENTER ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġhas Border () Ġ: ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠborderWidth Ġ> Ġ 0 f ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġis Full Height () Ġ: ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġlayout Height Ġ== ĠLinearLayout . LayoutParams . MATCH _ PARENT ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġis Full Width () Ġ: ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġlayout Width Ġ== ĠLinearLayout . LayoutParams . MATCH _ PARENT ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun ĠsetUp View () Ġ{ ĊĠĠĠĠĠĠĠ Ġlayout Params Ġ= ĠLinearLayout . LayoutParams ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLinearLayout . LayoutParams . WRAP _ CONTENT , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLinearLayout . LayoutParams . MATCH _ PARENT ) ĊĠĠĠĠĠĠĠ Ġorientation Ġ= ĠH ORIZONTAL ĊĠĠĠ Ġ} Ċ Ċ }