/* Ċ Ġ* ĠCopyright Ġ( c ) Ġ 2 0 1 9 ĠNam ĠN gu yen , Ġnam @ ene . im Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ package Ġk oh ii . v 1 . sample . ui . main Ċ Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroidx . core . text . parse As Html Ċ import Ġandroidx . recyclerview . widget . RecyclerView . Adapter Ċ import Ġk oh ii . v 1 . sample . R Ċ import Ġk oh ii . v 1 . sample . common . Base ViewHolder Ċ Ċ class ĠDemo Items Adapter ( ĊĠ Ġval Ġitems : ĠList < Demo Item >, ĊĠ Ġprivate Ġval ĠonClick : Ġ( Demo Item ) Ġ-> ĠUnit Ċ ) Ġ: ĠAdapter < Base ViewHolder >() Ġ{ ĊĊĠ Ġoverride Ġfun ĠgetItem ViewType ( position : ĠInt ): ĠInt Ġ{ ĊĠĠĠ Ġreturn Ġif Ġ( position Ġ<= Ġ 0 ) ĠR . layout . holder _ main _ text Ġelse ĠR . layout . holder _ main _ demo _ item ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun ĠonCreate ViewHolder ( ĊĠĠĠ Ġparent : ĠViewGroup , ĊĠĠĠ Ġview Type : ĠInt ĊĠ Ġ): ĠBase ViewHolder Ġ{ ĊĠĠĠ Ġreturn Ġwhen Ġ( view Type ) Ġ{ ĊĠĠĠĠĠ ĠR . layout . holder _ main _ text Ġ-> ĠText ViewHolder ( parent ) ĊĠĠĠĠĠ ĠR . layout . holder _ main _ demo _ item Ġ-> ĠDemo Item ViewHolder ( parent ). also Ġ{ Ġholder Ġ-> ĊĠĠĠĠĠĠĠ Ġholder . item View . setOnClickListener Ġ{ ĊĠĠĠĠĠĠĠĠĠ ĠonClick ( items [ holder . adapter Position Ġ- Ġ 1 ]) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠ Ġ} ĊĠĠĠĠĠ Ġelse Ġ-> Ġthrow ĠIllegalArgumentException (" Unknown Ġtype : Ġ$ view Type ") ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun ĠgetItem Count () Ġ= Ġitems . size Ġ+ Ġ 1 ĊĊĠ Ġoverride Ġfun Ġon Bind ViewHolder ( ĊĠĠĠ Ġholder : ĠBase ViewHolder , ĊĠĠĠ Ġposition : ĠInt ĊĠ Ġ) Ġ{ ĊĠĠĠ Ġif Ġ( position Ġ<= Ġ 0 ) Ġ{ ĊĠĠĠĠĠ Ġval Ġcontent Ġ= Ġholder . getString ( R . string . lib _ intro ) ĊĠĠĠĠĠĠĠĠĠ Ġ. parse As Html () ĊĠĠĠĠĠ Ġholder . bind ( content ) ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠ Ġholder . bind ( items [ position Ġ- Ġ 1 ]) ĊĠĠĠ Ġ} ĊĠ Ġ} Ċ } Ċ