package Ġcom . st f alcon . sample . features . demo . grid Ċ Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . widget . ImageView Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġcom . st f alcon . image viewer . St f alcon Image Viewer Ċ import Ġcom . st f alcon . sample . R Ċ import Ġcom . st f alcon . sample . common . extensions . get Drawable Compat Ċ import Ġcom . st f alcon . sample . common . extensions . load Image Ċ import Ġcom . st f alcon . sample . common . models . Demo Ċ import Ġcom . st f alcon . sample . common . models . Post er Ċ import Ġkotlinx . android . synt hetic . main . activity _ demo _ post ers _ grid .* Ċ Ċ class ĠPost ers Grid Demo Activity Ġ: ĠAppCompatActivity () Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġlist Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠImage With Video ("${ Demo . POST ERS _ PATH }/ V in cent . jpg ", Ġ" http :// dev images . apple . com / iphone / samples / bip b op / bip b op all . m 3 u 8 "), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠImage With Video ("${ Demo . POST ERS _ PATH }/ J ules . jpg ", Ġnull ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠImage With Video ("${ Demo . POST ERS _ PATH }/ K or ben . jpg ", Ġnull ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠImage With Video ("${ Demo . POST ERS _ PATH }/ T oret to . jpg ", Ġnull ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠImage With Video ("${ Demo . POST ERS _ PATH }/ Mart y . jpg ", Ġnull ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠImage With Video ("${ Demo . POST ERS _ PATH }/ Driver . jpg ", Ġnull ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠImage With Video ("${ Demo . POST ERS _ PATH }/ Fr ank . jpg ", Ġnull ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠImage With Video ("${ Demo . POST ERS _ PATH }/ Max . jpg ", Ġnull ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠImage With Video ("${ Demo . POST ERS _ PATH }/ Dan iel . jpg ", Ġnull )) ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġviewer : ĠSt f alcon Image Viewer < Image With Video > ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) ĊĠĠĠĠĠĠĠ ĠsetContentView ( R . layout . activity _ demo _ post ers _ grid ) ĊĊĠĠĠĠĠĠĠ Ġpost ers GridView . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġimage Loader Ġ= Ġ:: load Post er Image ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon Post er Click Ġ= Ġ:: open Viewer ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġopen Viewer ( start Position : ĠInt , Ġtarget : ĠImageView ) Ġ{ ĊĠĠĠĠĠĠĠ Ġviewer Ġ= ĠSt f alcon Image Viewer . Builder < Image With Video >( this , Ġlist , Ġthis :: load Image , Ġ:: Test ViewHolder ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. with Start Position ( start Position ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. with Transition From ( target ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. with Image ChangeListener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġviewer . update Transition Image ( post ers GridView . image Views [ it ]) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. show () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġload Post er Image ( imageView : ĠImageView , Ġposter : ĠPost er ?) Ġ{ ĊĠĠĠĠĠĠĠ ĠimageView . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbackground Ġ= Ġget Drawable Compat ( R . drawable . shape _ placeholder ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġload Image ( poster ?. url ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġload Image ( imageView : ĠImageView , Ġposter : ĠImage With Video ?) Ġ{ ĊĠĠĠĠĠĠĠ ĠimageView . apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbackground Ġ= Ġget Drawable Compat ( R . drawable . shape _ placeholder ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġload Image ( poster ?. imageUrl ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }