package Ġcom . android . example . li ved atab u ilder . rv Ċ Ċ import Ġcom . android . example . li ved ata . R Ċ import Ġcom . android . example . li ved ata . databinding . Sh oes Item Binding Ċ Ċ /** ĊĊ Ġ* Ġ@ Author : Ġch en ĊĊ Ġ* Ġ@ datetime : Ġ 2 0 2 0 / 8 / 7 ĊĊ Ġ* Ġ@ desc : ĊĊ Ġ*/ Ċ // è¿Ļä¸ª åĲİ éĿ¢ ä¸į ä¸Ģå®ļ è¦ģ è·Ł çĿĢ æŀĦéĢł åĩ½æķ° , åı¯ä»¥åľ¨ åĨħéĥ¨ çĶ¨ constructor è¿Ľè¡Į å®ļä¹ī Ċ class ĠSh oes Adapter Ġ: ĠData Bound Adapter < Sh oes Item Binding > Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġm Sh oes Ġ: ĠList < Rv Repository . Sh oes > ĊĊĠĠĠ Ġprivate Ġvar Ġm CallBack Ġ: ĠAction CallBack ? Ġ= Ġnull Ċ Ċ // ĠĠĠ Ġconstructor ( layout ID : ĠInt ) Ġ: Ġsuper ( layout ID ) ĊĊĠĠĠ Ġconstructor ( ĊĠĠĠĠĠĠĠ Ġlayout ID : ĠInt , ĊĠĠĠĠĠĠĠ Ġm Sh oes : ĠList < Rv Repository . Sh oes >, ĊĠĠĠĠĠĠĠ Ġm CallBack : ĠAction CallBack ? ĊĠĠĠ Ġ) Ġ: Ġsuper ( layout ID ) Ġ{ ĊĠĠĠĠĠĠĠ Ġthis . m Sh oes Ġ= Ġm Sh oes ĊĠĠĠĠĠĠĠ Ġthis . m CallBack Ġ= Ġm CallBack ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġoverride Ġfun Ġbind Item ( holder : ĠData Bound ViewHolder < Sh oes Item Binding >, Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġholder . binding . sh oes Ġ= Ġm Sh oes [ position ] ĊĠĠĠĠĠĠĠ Ġholder . binding . action CallBack Ġ= Ġm CallBack ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġm Sh oes . size ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġinterface ĠAction CallBack Ġ{ ĊĊĠĠĠĠĠĠĠ Ġfun Ġshow Name ( name Ġ: ĠString ) ĊĊĠĠĠ Ġ} ĊĊ Ċ }