package Ġcom . hu ot u . android . m if ang . adapter Ċ Ċ import Ġcom . ch ad . library . adapter . base . Base Quick Adapter Ċ import Ġcom . ch ad . library . adapter . base . Base ViewHolder Ċ import Ġcom . facebook . draw ee . view . Simple Draw ee View Ċ import Ġcom . hu ot u . android . m if ang . R Ċ import Ġcom . hu ot u . android . m if ang . base . G lide App Ċ import Ġcom . hu ot u . android . m if ang . bean . KV Entry Ċ import Ġcom . hu ot u . android . m if ang . util . Density Utils Ċ import Ġcom . hu ot u . android . m if ang . util . F resco Draw ee Controller Ċ import Ġcom . hu ot u . android . m if ang . util . F resco Draw ee Listener Ċ import Ġcom . hu ot u . android . m if ang . widget . video . Sample Cover Video Ċ import Ġcom . sh uy u . gs y vide op layer . G SY Video Manager Ċ import Ġcom . sh uy u . gs y vide op layer . builder . G SY Video Option Builder Ċ import Ġcom . sh uy u . gs y vide op layer . listener . G SY Sample CallBack Ċ import Ġcom . sh uy u . gs y vide op layer . video . Standard G SY Video Player Ċ Ċ class ĠVideo Adapter ( Ġdata Ġ: ArrayList < KV Entry > Ġ, Ġvar Ġitem Width Ġ: Int Ġ) ĊĠĠĠ Ġ: ĠBase Quick Adapter < KV Entry , ĠBase ViewHolder >( ĠR . layout . layout _ qu an _ video _ item Ġ, Ġdata ) ĊĠĠĠ Ġ, ĠF resco Draw ee Listener . Image Callback { Ċ Ċ // ĠĠĠ Ġvar ĠimageView : ImageView ?= null Ċ // ĠĠĠ Ġprivate Ġvar Ġg sy Video Option Builder = ĠG SY Video Option Builder () ĊĊĠĠĠ Ġoverride Ġfun Ġconvert ( helper : ĠBase ViewHolder ?, Ġitem : ĠK V Entry Ġ) Ġ{ ĊĊĠĠĠĠĠĠĠ Ġvar Ġiv Ġ= Ġhelper !!. getView < Simple Draw ee View >( R . id . qu an _ video _ item _ picture Ġ) ĊĊĊĊĠĠĠĠĠĠĠ Ġ// åľ¨ åĬłè½½ åĽ¾çīĩ ä¹ĭåīį ï¼Į åħĪ ç»Ļ ä¸Ģä¸ª é»ĺè®¤ çļĦ å®½ é«ĺ åĢ¼ ĊĠĠĠĠĠĠĠ Ġimage Callback ( item Width Ġ, Ġitem Width Ġ, Ġiv Ġ) ĊĊĊĠĠĠĠĠĠĠ ĠF resco Draw ee Controller . load Image ( iv Ġ, Ġitem Width Ġ, Ġitem Width Ġ, Ġitem . code Ġ, Ġthis Ġ) ĊĊĊĊĊĊĊ Ċ // ĠĠĠĠĠĠĠ ĠG lide . with ( mContext ). as Bitmap (). load ( Ġitem . code Ġ). into ( object : Simple Target < Bitmap > (){ Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Resource Ready ( resource : ĠBitmap , Ġtransition : ĠTransition < in ĠBitmap > ?) Ġ{ Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif ( Ġscale Type Ġ== Ġ 1 ) Ġ{ Ċ // Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġwid Ġ= Ġiv . width Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġhe i Ġ= Ġwid Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġlayout Ġ= Ġiv . layout Params Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlayout . width Ġ= Ġwid . toInt () Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlayout . height Ġ= Ġhe i . toInt () Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġiv . layout Params Ġ= Ġlayout Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} else Ġif ( scale Type == 2 ){ Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġwid Ġ= Ġresource . width Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġhe i Ġ= Ġresource . height Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġsw Ġ= Ġiv . width Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġsh Ġ= Ġsw * Ġhe i Ġ/ Ġwid Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġlayout Ġ= Ġiv . layout Params Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlayout . width Ġ= Ġsw Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlayout . height Ġ= Ġsh Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġiv . layout Params Ġ= Ġlayout Ċ //// ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ċ Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġiv . setImage Bitmap ( resource ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ċ // ĠĠĠĠĠĠĠ Ġ}) ĊĊĊĊ Ċ // ĠĠĠĠĠĠĠ Ġvar Ġvideo Pic Url Ġ= Ġp ics [ helper !!. adapter Position ] Ċ // Ċ // ĠĠĠĠĠĠĠ ĠimageView Ġ= ĠImageView ( mContext ) Ċ // ĠĠĠĠĠĠĠ ĠimageView !!. scale Type Ġ= ĠImageView . Scale Type . CENTER _ C ROP Ċ // Ċ // ĠĠĠĠĠĠĠ Ġif Ġ( imageView !!. parent Ġ!= Ġnull ) Ġ{ Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġview Group Ġ= ĠimageView !!. parent Ġas ĠViewGroup Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġview Group . remove View ( imageView ) Ċ // ĠĠĠĠĠĠĠ Ġ} Ċ // ĠĠĠĠĠĠĠ Ġvar Ġvideo Url Ġ= Ġitem Ċ // Ċ // ĠĠĠĠĠĠĠ Ġvar Ġtitle Ġ= "" Ċ // ĠĠĠĠĠĠĠ Ġvar Ġposition Ġ= Ġhelper !!. layout Position Ċ // ĠĠĠĠĠĠĠ Ġvar Ġg sy Video Player Ġ= Ġhelper . getView < Sample Cover Video >( R . id . qu an _ video _ item _ video ) Ċ // Ċ // ĠĠĠĠĠĠĠ Ġg sy Video Option Builder Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setIs Touch Wi get ( false ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Thumb ImageView ( imageView ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Url ( video Url ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set SetUp Lazy ( true )// lazy åı¯ä»¥ éĺ² æŃ¢ æ»ĳ åĬ¨ åį¡ é¡ ¿ Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Video Title ( title ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Cache With Play ( true ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Rotate View Auto ( true ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Lock Land ( true ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Play Tag ( TAG ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Show Full Animation ( true ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Need Lock Full ( true ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Play Position ( position ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Video All CallBack ( object Ġ: ĠG SY Sample CallBack () Ġ{ Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Prepared ( url : ĠString ?, Ġvar arg Ġobjects : ĠAny ) Ġ{ Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . on Prepared ( url , Ġ* objects ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! gs y Video Player . is If Current Is Fullscreen Ġ) Ġ{ Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// éĿĻ éŁ³ Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠG SY Video Manager . instance (). is Need Mute Ġ= Ġfalse Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ċ // Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ċ // Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Quit Fullscreen ( url : ĠString ?, Ġvar arg Ġobjects : ĠAny ) Ġ{ Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . on Quit Fullscreen ( url , Ġ* objects ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// åħ¨ å±ı ä¸į éĿĻ éŁ³ Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠG SY Video Manager . instance (). is Need Mute Ġ= Ġfalse Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ċ // Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Enter Fullscreen ( url : ĠString ?, Ġvar arg Ġobjects : ĠAny ) Ġ{ Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsuper . on Enter Fullscreen ( url , Ġ* objects ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠG SY Video Manager . instance (). is Need Mute Ġ= Ġfalse Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġg sy Video Player . current Player . title TextView . text Ġ= objects [ 0 ]. toString () Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}). build ( gs y Video Player ) Ċ // Ċ // Ċ // ĠĠĠĠĠĠĠ ĠG lide App . with ( mContext ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. as Bitmap () Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. load ( video Pic Url ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. placeholder ( R . mip map . ic _ launcher ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. error ( R . mip map . ic _ launcher ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. into ( object Ġ: ĠSimple Target < Bitmap > (){ Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Resource Ready ( resource : ĠBitmap , Ġtransition : ĠTransition < in ĠBitmap > ?) Ġ{ Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif ( imageView == null ) Ġreturn Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġwid Ġ= Ġresource . width Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġhe i Ġ= Ġresource . height Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġsw Ġ= ĠimageView !!. width Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġsh Ġ= Ġsw * Ġhe i Ġ/ Ġwid Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġlayout Ġ= ĠimageView !!. layout Params Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlayout . width Ġ= Ġsw Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlayout . height Ġ= Ġsh Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠimageView !!. layout Params Ġ= Ġlayout Ċ // Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠimageView !!. setImage Bitmap ( resource ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) Ċ // Ċ // Ċ // ĠĠĠĠĠĠĠ Ġ// å¢ŀåĬł title Ċ // ĠĠĠĠĠĠĠ Ġg sy Video Player . title TextView . visibility = ĠView . GONE Ċ // Ċ // ĠĠĠĠĠĠĠ Ġ// è®¾ç½® è¿ĶåĽŀ éĶ® Ċ // ĠĠĠĠĠĠĠ Ġg sy Video Player . back Button . visibility Ġ= ĠView . GONE Ċ // ĠĠĠĠĠĠĠ Ġ// è®¾ç½® åħ¨ å±ı æĮī éĶ® åĬŁèĥ½ Ċ // ĠĠĠĠĠĠĠ Ġg sy Video Player . fullscreen Button . setOnClickListener ( View . OnClickListener Ġ{ Ġresolve Full Btn ( gs y Video Player ) Ġ}) Ċ // ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* Ġ åħ¨ å±ı å¹ķ æĮī éĶ® å¤ĦçĲĨ ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprivate Ġfun Ġresolve Full Btn ( standard G SY Video Player : ĠStandard G SY Video Player ) Ġ{ ĊĠĠĠĠĠĠĠ Ġstandard G SY Video Player . start Window Fullscreen ( ĠmContext Ġ, Ġfalse Ġ, Ġtrue ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġimage Callback ( width : ĠInt , Ġheight : ĠInt , Ġsimple Draw ee View : ĠSimple Draw ee View ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsimple Draw ee View !!. layout Params . width = width ĊĠĠĠĠĠĠĠ Ġsimple Draw ee View !!. layout Params . height = height ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġimage Failure ( width : ĠInt , Ġheight : ĠInt , Ġsimple Draw ee View : ĠSimple Draw ee View ?) Ġ{ ĊĊĠĠĠ Ġ} Ċ }