package Ġio . mu un . apollo . presentation . ui . view Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . util . Attribute Set Ċ import Ġandroid . widget . LinearLayout Ċ import Ġandroid . widget . RadioButton Ċ import Ġandroid . widget . Radio Group Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . annotation . String Res Ċ import Ġbutter knife . BindView Ċ import Ġio . mu un . apollo . R Ċ import Ġio . mu un . apollo . presentation . ui . utils . setText Appearance Compat Ċ Ċ class ĠP icker Ġ@ Jvm Over loads Ġconstructor ( c : ĠContext , Ġa : ĠAttributeSet ? Ġ= Ġnull , Ġs : ĠInt Ġ= Ġ 0 ): ĊĠĠĠ ĠMu un View ( c , Ġa , Ġs ) Ġ{ ĊĊĠĠĠ Ġinterface ĠOn Option Ch osen Listener Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġon Option Ch osen ( option Id : ĠInt ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ BindView ( R . id . picker _ title ) ĊĠĠĠ Ġlateinit Ġvar Ġtitle View : ĠTextView ĊĊĠĠĠ Ġ@ BindView ( R . id . picker _ radio _ group ) ĊĠĠĠ Ġlateinit Ġvar Ġradio Group : ĠRadio Group ĊĊĠĠĠ Ġoverride Ġfun Ġget Layout Resource () Ġ= ĊĠĠĠĠĠĠĠ ĠR . layout . view _ picker ĊĊĠĠĠ Ġfun ĠsetTitle (@ String Res Ġres Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtitle View . setText ( res Id ) ĊĠĠĠĠĠĠĠ Ġtitle View . visibility Ġ= ĠVIS IBLE ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġadd Option ( option Id : ĠInt , Ġlabel : ĠCharSequence , Ġchecked : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġradio Button Ġ= ĠRadio Button ( context , Ġnull , ĠR . attr . radioButton Style ) ĊĠĠĠĠĠĠĠ Ġradio Button . layout Params Ġ= ĠLinearLayout . LayoutParams ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLayout Params . MATCH _ PARENT , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLayout Params . WRAP _ CONTENT ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġradio Button . id Ġ= Ġoption Id ĊĠĠĠĠĠĠĠ Ġradio Button . text Ġ= Ġlabel ĊĊĠĠĠĠĠĠĠ Ġif Ġ( checked ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġradio Button . isChecked Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġradio Button . setText Appearance Compat ( R . style . Mu un RadioButton TextAppearance Selected ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġradio Group . addView ( radioButton ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset On Option Ch osen Listener ( listener : ĠOn Option Ch osen Listener ) Ġ{ ĊĠĠĠĠĠĠĠ Ġradio Group . setOn Checked ChangeListener Ġ{ Ġ_, Ġchecked Id Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlistener . on Option Ch osen ( checked Id ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ