package Ġcom . hc any z . environment variable . setting . ui Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . text . Editable Ċ import Ġandroid . text . Text Watcher Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . view . input method . Input Method Manager Ċ import Ġandroid . widget . TextView Ċ import Ġandroidx . fragment . app . Fragment Ċ import Ġandroidx . recyclerview . widget . Linear LayoutManager Ċ import Ġcom . hc any z . environment variable . Ev Handler Ċ import Ġcom . hc any z . environment variable . IE v Manager Ċ import Ġcom . hc any z . environment variable . base . EV _ VARIANT _ PRE SET _ CUSTOM IZE Ċ import Ġcom . hc any z . environment variable . setting . R Ċ import Ġcom . hc any z . environment variable . setting . databinding . Fragment Ev Switch Binding Ċ import Ġcom . hc any z . z adapter . Z Adapter Ċ import Ġcom . hc any z . z adapter . helper . bind Z Adapter Ċ import Ġcom . hc any z . z adapter . hod ler . ViewHolder Helper Ċ import Ġcom . hc any z . z adapter . hod ler . Z ViewHolder Ċ import Ġcom . hc any z . z adapter . registry . I Holder Creator Name Ċ Ċ class ĠEv Switch Fragment Ġ: ĠFragment () Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġnew Instance ( ev Group Class : ĠClass < IE v Manager >): ĠFragment Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠEv Switch Fragment (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġargs Ġ= ĠBundle () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġargs . put Serializable (" ev Group Class ", Ġev Group Class ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġarguments Ġ= Ġargs ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġvar Ġev Main Binding : ĠFragment Ev Switch Binding ? Ġ= Ġnull ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate View ( ĊĠĠĠĠĠĠĠ Ġinflater : ĠLayoutInflater , Ġcontainer : ĠViewGroup ?, ĠsavedInstanceState : ĠBundle ? ĊĠĠĠ Ġ): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġev Main Binding Ġ= ĠFragment Ev Switch Binding . inflate ( in flater , Ġcontainer , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġreturn Ġev Main Binding ?. root ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Destroy View () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Destroy View () ĊĠĠĠĠĠĠĠ Ġev Main Binding Ġ= Ġnull ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Suppress (" UN CHECK ED _ CAST ") ĊĠĠĠ Ġoverride Ġfun Ġon View Created ( view : ĠView , ĠsavedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on View Created ( view , ĠsavedInstanceState ) ĊĠĠĠĠĠĠĠ Ġarguments ?. run Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmanager Class : ĠClass < IE v Manager > Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġget Serializable (" ev Group Class ") Ġas ĠClass < IE v Manager > ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġi Ev Manager : ĠIE v Manager Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmanager Class . getMethod (" get Singleton ", ĠContext :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. invoke ( null , Ġrequire Context ()) Ġas ĠIE v Manager ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġev Handlers Ġ= Ġi Ev Manager . get Ev Handlers ( require Context (). application Context ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlist : ĠMutable List < I Holder Creator Name > Ġ= Ġev Handlers ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. flatMap Ġ{ Ġev Handler Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġall Variant K vs Ġ= Ġev Handler . all Variant K vs () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcurrent Variant Ġ= Ġev Handler . current Variant () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlist Ġ= Ġarray ListOf < I Holder Creator Name >() ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġitem Name Ġ= Ġev Handler . ev ItemName () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlist . add ( Ev Variant Title Wrap ( itemName )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlist . addAll ( all Variant K vs . map Ġ{ Ġentry Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEv Variant Info Wrap ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġev Handler , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġitem Name , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġentry . key , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġentry . value , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcurrent Variant Ġ== Ġentry . key ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlist ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. to Mutable List () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlist Z Adapter Ġ= ĠZ Adapter ( list ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlist Z Adapter . registry ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. registered ( Ev Variant Title Wrap :: class . java . name ) Ġ{ Ġparent : ĠViewGroup Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ registered ĠEv Variant Title Holder ( parent ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlist Z Adapter . registry ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. registered ( Ev Variant Info Wrap :: class . java . name ) Ġ{ Ġparent : ĠViewGroup Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ registered ĠEv Variant Holder ( parent ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġev Main Binding ?. ev R cy List ?. bind Z Adapter ( list Z Adapter ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ æī¹éĩı åĪĩæį¢ çİ¯å¢ĥ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġvariant List : ĠMutable List < String > Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġi Ev Manager . intersection Variants . to Mutable List () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġvariant Z Adapter Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠZ Adapter ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvariant List , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠviewHolder Helper Ġ= ĠEv Variant Item ViewHolder Helper ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthis @ Ev Switch Fragment ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ{ Ġvariant Name Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġev Handlers . forEach Ġ{ Ġev Handler Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġev Handler . change Variant ( variant Name ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlist Z Adapter . datas . forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( it Ġas ? ĠEv Variant Info Wrap )?. selected Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( it Ġas ? ĠEv Variant Info Wrap )?. variant Name Ġ== Ġvariant Name ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlist Z Adapter . notify DataSet Changed () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvariant Z Adapter . registry . registered Ġ{ Ġreturn @ registered Ġ" single " Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvariant Z Adapter . registry ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. registered (" single ") Ġ{ Ġparent : ĠViewGroup Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ registered ĠEv Variant Item Holder ( parent ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġev Main Binding ?. ev R cy Full Variant ?. layout Manager Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLinearLayoutManager ( context , ĠLinearLayoutManager . HORIZONTAL , Ġfalse ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġev Main Binding ?. ev R cy Full Variant ?. adapter Ġ= Ġvariant Z Adapter ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠEv Variant Item Holder ( parent : ĠViewGroup ) Ġ: ĊĠĠĠĠĠĠĠ ĠZ ViewHolder < String >( parent , ĠR . layout . item _ ev _ variant _ horizontal ) Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġname Ġby Ġlazy Ġ{ Ġfv < TextView >( R . id . tv _ ev _ variant _ name ) Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġinit Listener ( root View : ĠView ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . init Listener ( root View ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( m ViewHolder Helper Ġas ? ĠEv Variant Item ViewHolder Helper )?. item Click ?. invoke ( m Data ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġupdate ( data : ĠString , Ġpayload s : ĠList < Any >) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . update ( data , Ġpayload s ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname . text Ġ= Ġdata ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠEv Variant Item ViewHolder Helper ( ĊĠĠĠĠĠĠĠ Ġfragment : ĠFragment , ĊĠĠĠĠĠĠĠ Ġval Ġitem Click : Ġ( variant Name : ĠString ) Ġ-> ĠUnit ĊĠĠĠ Ġ) Ġ: ĠViewHolder Helper ( fragment ) ĊĊĠĠĠ Ġclass ĠEv Variant Info Wrap ( ĊĠĠĠĠĠĠĠ Ġval Ġev Handler : ĠEv Handler , ĊĠĠĠĠĠĠĠ Ġval Ġitem Name : ĠString , ĊĠĠĠĠĠĠĠ Ġval Ġvariant Name : ĠString , ĊĠĠĠĠĠĠĠ Ġval Ġvariant Value : ĠString ?, ĊĠĠĠĠĠĠĠ Ġvar Ġselected : ĠBoolean ĊĠĠĠ Ġ) Ġ: ĠI Holder Creator Name ĊĊĠĠĠ Ġclass ĠEv Variant Holder ( parent : ĠViewGroup ) Ġ: ĊĠĠĠĠĠĠĠ ĠZ ViewHolder < Ev Variant Info Wrap >( parent , ĠR . layout . item _ ev _ variant _ vertical ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġname Ġby Ġlazy Ġ{ Ġfv < TextView >( R . id . tv _ ev _ variant _ name ) Ġ} ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġvalue Tv Ġby Ġlazy Ġ{ Ġfv < TextView >( R . id . tv _ ev _ variant _ value ) Ġ} ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġvalue Et Ġby Ġlazy Ġ{ Ġfv < TextView >( R . id . et _ ev _ variant _ value ) Ġ} ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġselected Ġby Ġlazy Ġ{ Ġfv < View >( R . id . iv _ ev _ variant _ selected ) Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġinit Listener ( root View : ĠView ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . init Listener ( root View ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġroot View . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ( z Adapter Ġas ? ĠZ Adapter <* >) ?. run Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdatas . forEach Ġ{ Ġdata Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( data Ġis ĠEv Variant Info Wrap Ġ&& Ġm Data . itemName Ġ== Ġdata . itemName ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdata . selected Ġ= Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Data . selected Ġ= Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( m Data . variant Name Ġ== ĠEV _ VARIANT _ PRE SET _ CUSTOM IZE ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Data . ev Handler . change Variant To Custom ize ( value Et . text ?. toString () Ġ?: Ġ"") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Data . ev Handler . change Variant ( m Data . variant Name ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġnotify DataSet Changed () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Et . add TextChanged Listener ( object Ġ: ĠText Watcher Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġbefore TextChanged ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġs : ĠCharSequence ?, Ġstart : ĠInt , Ġcount : ĠInt , Ġafter : ĠInt ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon TextChanged ( s : ĠCharSequence ?, Ġstart : ĠInt , Ġbefore : ĠInt , Ġcount : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġafter TextChanged ( s : ĠEdit able ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( value Et . has Focus () Ġ&& Ġm Data . selected ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Data . ev Handler . change Variant To Custom ize ( s . toString ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Et . setOn Focus ChangeListener Ġ{ Ġv , Ġhas Focus Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! has Focus ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmanager Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠmContext . getSystem Service ( Context . INPUT _ METHOD _ SERVICE ) Ġas ĠInput Method Manager ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmanager . hide Soft Input From Window ( v . window Token , Ġ 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġupdate ( data : ĠEv Variant Info Wrap , Ġpayload s : ĠList < Any >) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . update ( data , Ġpayload s ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname . text Ġ= Ġdata . variant Name ĊĠĠĠĠĠĠĠĠĠĠĠ Ġselected . visibility Ġ= Ġif Ġ( data . selected ) ĠView . VISIBLE Ġelse ĠView . IN VISIBLE ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( data . variant Name Ġ== ĠEV _ VARIANT _ PRE SET _ CUSTOM IZE ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Tv . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Et . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Et . text Ġ= Ġdata . variant Value ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Et . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Tv . visibility Ġ= ĠView . VISIBLE ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue Tv . text Ġ= Ġdata . variant Value ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠEv Variant Title Wrap ( val Ġtitle : ĠString ) Ġ: ĠI Holder Creator Name ĊĊĠĠĠ Ġclass ĠEv Variant Title Holder ( parent : ĠViewGroup ) Ġ: ĊĠĠĠĠĠĠĠ ĠZ ViewHolder < Ev Variant Title Wrap >( parent , ĠR . layout . item _ ev _ variant _ title ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġoverride Ġfun Ġupdate ( data : ĠEv Variant Title Wrap , Ġpayload s : ĠList < Any >) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . update ( data , Ġpayload s ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtitle Ġ= Ġfv < TextView >( R . id . tv _ ev _ variant _ title ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġtitle . text Ġ= Ġdata . title ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }