package Ġcom . line cy . copy . ui . home . popup window Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . databinding . Data Binding Util Ċ import Ġandroid . databinding . ViewData Binding Ċ import Ġandroid . support . v 7 . widget . RecyclerView Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . ViewGroup Ċ import Ġcom . line cy . copy . BR Ċ import Ġcom . line cy . copy . R Ċ import Ġcom . line cy . copy . ui . home . popup window . Tab Adapter . ViewHolder Ċ import Ġcom . line cy . eye pet izer . data . model . Tab Model Ċ Ċ /** Ċ Ġ* Ġ@ author Ġby Ġline cy Ċ Ġ*/ Ċ class ĠTab Adapter ( context : ĠContext ) Ġ: ĠRecyclerView . Adapter < ViewHolder >() Ġ{ ĊĊĠ Ġprivate Ġval Ġlists Ġ= ĠArrayList < Tab Model >() ĊĠ Ġprivate Ġval Ġinflater : ĠLayoutInflater Ġ= ĠLayoutInflater . from ( context ) ĊĊĊĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠViewHolder ?, Ġposition : ĠInt ) Ġ{ ĊĠĠĠ Ġholder ?. bind Data ( lists [ position ], Ġposition ) ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ{ ĊĠĠĠ Ġreturn Ġlists . size ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup ?, Ġview Type : ĠInt ): ĠViewHolder Ġ{ ĊĠĠĠ Ġval Ġview Binding Ġ= ĠData Binding Util . inflate < ViewData Binding >( in flater , ĠR . layout . item _ pop _ tab , ĊĠĠĠĠĠĠĠ Ġparent , Ġfalse ) ĊĊĠĠĠ Ġreturn ĠViewHolder ( view Binding ) ĊĠ Ġ} ĊĊĊĠ Ġinner Ġclass ĠViewHolder ( private Ġval Ġview Data Binding : ĠView Data Binding ) Ġ: ĠRecyclerView . ViewHolder ( ĊĠĠĠĠĠ Ġview Data Binding . root ) Ġ{ ĊĠĠĠ Ġprivate Ġvar Ġitem Position Ġ= Ġ 1 ĊĊĠĠĠ Ġfun Ġbind Data ( tab : ĠTab Model , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠ Ġitem Position Ġ= Ġposition ĊĠĠĠĠĠ Ġview Data Binding . set Variable ( BR . item Tab , Ġtab ) ĊĠĠĠĠĠ Ġview Data Binding . execute Pending Bindings () ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĊĠ Ġfun Ġrefresh Data ( list : ĠList < Tab Model > ?) Ġ{ ĊĠĠĠ Ġthis . lists . clear () ĊĠĠĠ Ġif Ġ( list Ġ!= Ġnull Ġ&& Ġlist . isNotEmpty ()) Ġ{ ĊĠĠĠĠĠ Ġthis . lists . addAll ( list ) ĊĠĠĠ Ġ} ĊĠĠĠ Ġnotify DataSet Changed () ĊĠ Ġ} Ċ }