package Ġcom . yo yi yi . sole il . adapter . app . video Ċ Ċ import Ġandroid . content . Intent Ċ import Ġandroid . view . LayoutInflater Ċ import Ġandroid . view . View Ċ import Ġandroid . widget . ImageView Ċ import Ġandroid . widget . TextView Ċ import Ġcom . bump tech . glide . G lide Ċ import Ġcom . bump tech . glide . load . engine . Disk Cache Strategy Ċ import Ġcom . ch ad . library . adapter . base . Base Multi Item Quick Adapter Ċ import Ġcom . ch ad . library . adapter . base . Base ViewHolder Ċ import Ġcom . yo yi yi . sole il . R Ċ import Ġcom . yo yi yi . sole il . bean . app . video . Mul Summary Ċ import Ġcom . yo yi yi . sole il . module . app . up . Up Detail Activity Ċ import Ġcom . yo yi yi . sole il . utils . Number Utils Ċ import Ġcom . yo yi yi . sole il . utils . time . Time Utils Ċ import Ġcom . yo yi yi . sole il . widget . flow layout . Flow Layout Ċ import Ġcom . yo yi yi . sole il . widget . flow layout . Tag Adapter Ċ import Ġcom . yo yi yi . sole il . widget . flow layout . Tag Flow Layout Ċ import Ġjava . util .* Ċ Ċ /** Ċ Ġ* Ġ@ author Ġzz q Ġ Ġä½ľèĢħ ĠE - mail : ĠĠ Ġsole ily o yi yi @ gmail . com Ċ Ġ* Ġ* Ċ Ġ* Ġ@ date ĠåĪĽå»º æĹ¶éĹ´ ï¼ļ 2 0 1 7 / 6 / 1 5 Ġ 1 0 : 0 7 Ċ Ġ* Ġ* Ġæı ı è¿° : Ċ Ġ*/ Ċ Ċ class ĠSummary Adapter ( data : ĠList < Mul Summary >) Ġ: ĠBase Multi Item Quick Adapter < Mul Summary , ĠBase ViewHolder >( data ) Ġ{ ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġadd ItemType ( Mul Summary . TYPE _ DES , ĠR . layout . layout _ item _ video _ detail _ summary _ des ) ĊĠĠĠĠĠĠĠ Ġadd ItemType ( Mul Summary . TYPE _ OWNER , ĠR . layout . layout _ item _ video _ detail _ summary _ owner ) ĊĠĠĠĠĠĠĠ Ġadd ItemType ( Mul Summary . TYPE _ RE LATE , ĠR . layout . layout _ item _ video _ detail _ summary _ re late ) ĊĠĠĠĠĠĠĠ Ġadd ItemType ( Mul Summary . TYPE _ RE LATE _ HEAD , ĠR . layout . layout _ item _ video _ detail _ summary _ re late _ head ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġconvert ( holder : ĠBase ViewHolder , Ġmul Summary : ĠMul Summary ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( mul Summary . item Type ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMul Summary . TYPE _ DES Ġ-> ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmul Summary . state ?. let Ġ{ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġholder . setText ( R . id . tv _ title , Ġmul Summary . title ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setText ( R . id . tv _ video _ play _ num , ĠNumber Utils . format ("${ it . view } ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setText ( R . id . tv _ video _ dan mak u , ĠNumber Utils . format ("${ it . dan mak u } ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setText ( R . id . tv _ share , ĠNumber Utils . format ("${ it . share } ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setText ( R . id . tv _ coin , ĠNumber Utils . format ("${ it . coin } ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setText ( R . id . tv _ fav our ite , ĠNumber Utils . format ("${ it . favorite } ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setText ( R . id . tv _ down , Ġ" ç¼ĵåŃĺ ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setText ( R . id . tv _ des , Ġmul Summary . desc ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠMul Summary . TYPE _ OWNER Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmul Summary . owner ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠG lide . with ( mContext ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. load ( it . face ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. center Crop () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. disk Cache Strategy ( Disk Cache Strategy . ALL ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. dont Animate () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. into ( holder . getView < ImageView >( R . id . iv _ avatar )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġholder . getView < View >( R . id . iv _ avatar ). setOnClickListener Ġ{ ĠmContext . startActivity ( Intent ( mContext , ĠUp Detail Activity :: class . java )) Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdate Ġ= ĠTime Utils . millis 2 String (( mul Summary . ctime Ġ* ĠMath . pow ( 1 0 . 0 , Ġ 3 . 0 )). to Long ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsplit Ġ= Ġdate . split ("- ". to Regex ()). drop Last While Ġ{ Ġit . isEmpty () Ġ}. to Typed Array () ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġholder . setText ( R . id . tv _ name , Ġit . name ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setText ( R . id . tv _ time , Ġsplit [ 0 ] Ġ+ Ġ" å¹´ " Ġ+ Ġsplit [ 1 ] Ġ+ Ġ" æľĪ " Ġ+ Ġsplit [ 2 ]. split (" Ġ". to Regex ()). drop Last While Ġ{ Ġit . isEmpty () Ġ}. to Typed Array ()[ 0 ] Ġ+ Ġ" æĹ¥ " Ġ+ Ġ" æĬķ éĢĴ ") ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtags Layout Ġ= Ġholder . getView < Tag Flow Layout >( R . id . tags _ layout ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtag Ġ= ĠArrayList < String >() ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmul Summary . tags ?. forEach Ġ{ Ġtag Bean Ġ-> Ġtag . add ( tag Bean . tag _ name ) Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtags Layout . adapter Ġ= Ġobject Ġ: ĠTag Adapter < String >( tag ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġget View ( flow Layout : ĠFlow Layout , Ġi : ĠInt , Ġlist Bean : ĠString ): ĠView Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġm Tags Ġ= ĠLayoutInflater . from ( mContext ). inflate ( R . layout . layout _ hot _ tags _ item , Ġflow Layout , Ġfalse ) Ġas ĠTextView ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Tags . text Ġ= Ġlist Bean ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠĠ Ġm Tags . setOnClickListener { ĠTotal Search Activity . startActivity ( mContext , Ġlist Bean . key )} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġm Tags ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠMul Summary . TYPE _ RE LATE _ HEAD Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMul Summary . TYPE _ RE LATE Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmul Summary . rel ates ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠG lide . with ( mContext ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. load < Any >( it . pic ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. center Crop () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. placeholder ( R . drawable . b ili _ default _ image _ tv ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. disk Cache Strategy ( Disk Cache Strategy . ALL ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. dont Animate () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. into ( holder . getView < View >( R . id . iv _ video _ preview ) Ġas ĠImageView ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġholder . setText ( R . id . tv _ video _ title , Ġit . title ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setText ( R . id . tv _ video _ up , Ġit . owner . name ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setText ( R . id . tv _ video _ play , ĠNumber Utils . format ("${ it . stat . view } ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setText ( R . id . tv _ video _ dan mak u , ĠNumber Utils . format ("${ it . stat . dan mak u } ")) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ