package Ġio . horizontal systems . views Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . util . Attribute Set Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . Compound Button Ċ import Ġkotlinx . android . synt hetic . main . view _ settings _ switch . view .* Ċ Ċ class ĠSettings View Switch Ġ@ Jvm Over loads Ġconstructor ( context : ĠContext , Ġattrs : ĠAttributeSet ? Ġ= Ġnull , Ġdef Style Attr : ĠInt Ġ= Ġ 0 ) ĊĠĠĠ Ġ: ĠSettings View Base ( context , Ġattrs , Ġdef Style Attr ) Ġ{ ĊĊĠĠĠ Ġfun Ġshow Switch ( isChecked : ĠBoolean , Ġlistener : ĠCompound Button . On Checked ChangeListener ) Ġ{ ĊĠĠĠĠĠĠĠ Ġswitch Settings . setOn Checked ChangeListener ( null ) ĊĠĠĠĠĠĠĠ Ġswitch Settings . isChecked Ġ= Ġis Checked ĊĠĠĠĠĠĠĠ Ġswitch Settings . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠ Ġswitch Settings . setOn Checked ChangeListener ( listener ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġswitch Toggle () Ġ{ ĊĠĠĠĠĠĠĠ Ġswitch Settings . toggle () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġinf late ( context , ĠR . layout . view _ settings _ switch , Ġthis ) ĊĊĠĠĠĠĠĠĠ Ġval Ġattributes Ġ= Ġcontext . obtain Styled Attributes ( attrs , ĠR . style able . Settings View Switch ) ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġshow Title ( attributes . getString ( R . style able . Settings View Switch _ title )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġshow Subtitle ( attributes . getString ( R . style able . Settings View Switch _ subtitle )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġshow Icon ( attributes . get Drawable ( R . style able . Settings View Switch _ icon )) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġshow Bottom Border ( attributes . getBoolean ( R . style able . Settings View Switch _ bottom Border , Ġfalse )) ĊĠĠĠĠĠĠĠ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġattributes . recycle () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ