package Ġdev . k xx cn . app _ with . ui . main . di ary Ċ Ċ import Ġandroid . support . v 7 . widget . RecyclerView Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . view . ViewGroup Ċ import Ġcom . bump tech . glide . request . RequestOptions Ċ import Ġcom . bump tech . glide . request . target . Target Ċ import Ġcom . joo oon ho . Selectable Rounded ImageView Ċ import Ġdev . k xx cn . app _ with . R Ċ import Ġdev . k xx cn . app _ with . data . model . di ary . Di ary Ċ import Ġdev . k xx cn . app _ with . data . remote . API Persistence . I MAGES _ URL Ċ import Ġdev . k xx cn . app _ with . util . Image Processing Helper Ċ Ċ class ĠDi ary Adapter ( ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġdevice Width : ĠInt Ċ ) Ġ: ĠRecyclerView . Adapter < Di ary Adapter . Companion . ViewHolder >() Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġdi ary List : ĠList < Di ary >? Ġ= Ġnull ĊĊĠĠĠ Ġprivate Ġval Ġoptions Ġ= ĠRequest Options . fit Center Transform (). override ( Target . SIZE _ ORIGIN AL ) ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ViewHolder ( parent : ĠViewGroup , Ġview Type : ĠInt ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠViewHolder ( LayoutInflater . from ( parent . context ). inflate ( R . layout . item _ di ary , Ġparent , Ġfalse )) ĊĊĠĠĠ Ġoverride Ġfun ĠgetItem Count () Ġ= Ġdi ary List ?. size Ġ?: Ġ 0 ĊĊĠĠĠ Ġoverride Ġfun Ġon Bind ViewHolder ( holder : ĠViewHolder , Ġposition : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġitem Ġ= Ġdi ary List ?. get ( position ) Ġ?: Ġreturn ĊĠĠĠĠĠĠĠ Ġval Ġctx Ġ= Ġholder . item View . context Ġ?: Ġreturn ĊĠĠĠĠĠĠĠ Ġval Ġparams Ġ= Ġholder . di ary Iv . layout Params ĊĠĠĠĠĠĠĠ Ġparams . width Ġ= Ġdevice Width Ġ/ Ġ 2 Ġ- Ġ 5 0 ĊĠĠĠĠĠĠĠ Ġholder . di ary Iv . layout Params Ġ= Ġparams ĊĠĠĠĠĠĠĠ Ġholder . di ary Iv . layout ( 0 , Ġ 0 , Ġ 0 , Ġ 0 ) ĊĠĠĠĠĠĠĠ ĠImage Processing Helper . set Thumbnail ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġctx , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġctx . getString ( R . string . param _ download _ image _ url , ĠI MAGES _ URL , Ġitem . gallery Name ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġholder . di ary Iv , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoptions ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġset Items (_ di ary List : ĠList < Di ary > ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġdi ary List Ġ= Ġ_ di ary List ĊĠĠĠĠĠĠĠ Ġnotify DataSet Changed () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġclass ĠViewHolder ( item View : ĠView ) Ġ: ĠRecyclerView . ViewHolder ( item View ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdi ary Iv : ĠSelect able Rounded ImageView Ġ= ĠitemView . findViewById ( R . id . iv _ di ary ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }