package Ġcom . s ud han shu . mv vm . image app . view Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . support . v 7 . widget . RecyclerView Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . ImageView Ċ import Ġandroid . widget . TextView Ċ import Ġcom . s ud han shu . mv vm . image app . EXTRA _ IMG _ ITEM Ċ import Ġcom . s ud han shu . mv vm . image app . R Ċ import Ġcom . s ud han shu . mv vm . image app . model . Image Item Ċ import Ġcom . s ud han shu . mv vm . image app . util . App Util . load Image Ċ Ċ class ĠImage Item Recycler Ad aper ( ctx Ġ: ĠContext , Ġitem List Ġ: ĠList < Image Item > ?) Ġ: ĊĠĠĠ ĠRecyclerView . Adapter < Image Item Recycler Ad aper . Item Item ViewHolder >() Ġ{ ĊĊĠĠĠ Ġprivate Ġval ĠmContext Ġ= Ġctx ĊĠĠĠ Ġprivate Ġvar Ġm ItemList Ġ= Ġitem List ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ): ĠItem Item ViewHolder Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġv Ġ= ĠLayoutInflater . from ( mContext ). inflate ( R . layout . layout _ image _ item , Ġparent , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġreturn ĠItem Item ViewHolder ( v ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġif ( m ItemList Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġm ItemList !!. size ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠ Ġreturn Ġ 0 ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠItem Item ViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġitem Ġ= Ġm ItemList ?. get ( position ) ĊĠĠĠĠĠĠĠ Ġif Ġ( item Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . title . text Ġ= Ġitem . title ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . thumbnail . load Image ( mContext , Ġitem . thumbnail Url ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġholder . item View . setOnClickListener { ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( mContext , ĠImageView Activity :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġintent . putExtra ( EXTRA _ IMG _ ITEM , item ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠmContext . startActivity ( intent ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġclass ĠItem Item ViewHolder ( item View Ġ: ĠView ) Ġ: ĠRecyclerView . ViewHolder ( item View ){ ĊĠĠĠĠĠĠĠ Ġvar Ġtitle Ġ= ĠitemView . findViewById < TextView >( R . id . tv _ album name ) ĊĠĠĠĠĠĠĠ Ġvar Ġthumbnail Ġ= ĠitemView . findViewById < ImageView >( R . id . iv _ album thumbnail ) ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġupdate List ( new Items Ġ: ĠList < Image Item >) Ġ{ ĊĠĠĠĠĠĠ Ġm ItemList Ġ= Ġnew Items ĊĠĠĠĠĠĠĠ Ġnotify DataSet Changed (); ĊĠĠĠ Ġ} Ċ Ċ }