package Ġcom . di amon ded ge . kt adapter Ċ Ċ import Ġandroid . content . res . Resources Ċ import Ġandroid . view . Gravity Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . LinearLayout Ċ import Ġandroid . widget . TextView Ċ Ċ class ĠText VH < T Ġ: ĠAny >( val Ġparent : ĠView , Ġadapter : ĠK t Adapter < T >) Ġ: ĊĠĠĠ ĠK t Adapter . ViewHolder < T >( LinearLayout ( parent . context ), Ġadapter ) Ġ{ ĊĊĠĠĠ Ġprivate Ġval ĠtextView : ĠTextView Ġ= ĠTextView ( parent . context ) ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ ĠtextView . is Focus able Ġ= Ġtrue ĊĠĠĠĠĠĠĠ ĠtextView . is Focus able In Touch Mode Ġ= Ġtrue ĊĠĠĠĠĠĠĠ ĠtextView . gravity Ġ= ĠGr avity . CENTER _ VERTICAL ĊĠĠĠĠĠĠĠ ĠtextView . setText Appearance ( parent . context , Ġandroid . R . style . TextAppearance _ Inverse ); ĊĠĠĠĠĠĠĠ Ġval Ġcontainer Ġ= ĠitemView ĊĠĠĠĠĠĠĠ Ġif Ġ( container Ġis ĠLinearLayout ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlayout Params Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠLinearLayout . LayoutParams ( ViewGroup . LayoutParams . MATCH _ PARENT , ĠViewGroup . LayoutParams . WRAP _ CONTENT ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmargin Ġ= Ġ 8 . px ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlayout Params . set Margins ( margin , Ġmargin Ġ/ Ġ 2 , Ġmargin , Ġmargin Ġ/ Ġ 2 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontainer . layout Params Ġ= Ġlayout Params ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontainer . addView ( textView ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġbind ( position : ĠInt , Ġitem : ĠT ) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( item Ġis ĠCharSequence ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠtextView . text Ġ= Ġitem ĊĠĠĠĠĠĠĠ Ġelse ĊĠĠĠĠĠĠĠĠĠĠĠ ĠtextView . text Ġ= Ġitem . toString () ĊĠĠĠ Ġ} Ċ } Ċ Ċ val ĠInt . px : ĠInt ĊĠĠĠ Ġget () Ġ= Ġ( this Ġ* ĠResources . getSystem (). display Metrics . density ). toInt () Ċ