/* Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 1 9 Ġsky do ves Ċ Ġ* Ċ Ġ* Ġ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 Ġcom . sky do ves . android ribbon Ċ Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . LinearLayout Ċ import Ġcom . sky do ves . bas er ec y cl er view adapter . Base ViewHolder Ċ Ċ /** ĠR ibbon Recycler Adapter Ġis Ġan Ġimplementation Ġof Ġ[ Base ViewHolder ] Ġthat Ġhas Ġ[ R ibbon View ] Ġas Ġdata . Ġ*/ Ċ @ Suppress (" Can Be Parameter ") Ċ class ĠR ibbon RecyclerView Holder ( ĊĠ Ġprivate Ġval Ġview : ĠView , ĊĠ Ġprivate Ġval Ġdelegate : ĠDelegate ? Ġ= Ġnull Ċ ) Ġ: ĠBase ViewHolder ( view ) Ġ{ ĊĊĠ Ġ/** ĠDelegate Ġis Ġdelegate Ġinterface Ġfor Ġcommunic ating Ġwith Ġview . Ġ*/ ĊĠ Ġinterface ĠDelegate Ġ{ ĊĠĠĠ Ġ/** Ġon R ibbon Item Click Ġwill Ġinvoked Ġby Ġ[ onClick ] Ġmethod . Ġ*/ ĊĠĠĠ Ġfun Ġon R ibbon Item Click ( ribbon View : ĠR ibbon View ) ĊĠ Ġ} ĊĊĠ Ġprivate Ġlateinit Ġvar Ġri bb on View : ĠR ibbon View ĊĊĠ Ġ/** Ġbind Ġdata Ġto ĠR ibbon View Ġ*/ ĊĠ Ġoverride Ġfun Ġbind Data ( data : ĠAny ) Ġ{ ĊĠĠĠ Ġif Ġ( data Ġis ĠR ibbon View ) Ġ{ ĊĠĠĠĠĠ Ġthis . ribbon View Ġ= Ġdata ĊĠĠĠĠĠ Ġdraw Item UI () ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġ/** Ġdraw Ġon Ġitem ĠUI Ġ*/ ĊĠ Ġprivate Ġfun Ġdraw Item UI () Ġ{ ĊĠĠĠ Ġval Ġlayout : ĠLinearLayout Ġ= ĠitemView . findViewById ( R . id . item _ ribbon _ layout ) ĊĠĠĠ Ġlayout . removeAll Views () ĊĠĠĠ Ġlayout . addView ( ribbon View ) ĊĠ Ġ} ĊĊĠ Ġ/** Ġinvoke Ġon ItemClickListener Ġ*/ ĊĠ Ġoverride Ġfun ĠonClick ( p 0 : ĠView ?) Ġ{ ĊĠĠĠ Ġdelegate ?. on R ibbon Item Click ( ribbon View ) ĊĠ Ġ} ĊĊĠ Ġ/** Ġinvoke Ġon Item Long ClickListener Ġ*/ ĊĠ Ġoverride Ġfun Ġon Long Click ( p 0 : ĠView ?) Ġ= Ġfalse Ċ } Ċ