package Ġcom . yo yi yi . sole il . adapter . app . up Ċ Ċ import Ġandroid . support . v 7 . widget . RecyclerView Ċ import Ġandroid . support . v 7 . widget . St agger ed Grid LayoutManager Ċ import Ġandroid . view . ViewGroup Ċ import Ġandroid . widget . ImageView Ċ 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 . user . Mul Up Detail Ċ import Ġcom . yo yi yi . sole il . utils . App Utils Ċ import Ġcom . yo yi yi . sole il . utils . Number Utils Ċ import Ġcom . yo yi yi . sole il . utils . Span Utils Ċ Ċ /** Ċ Ġ* Ġ@ author Ġzz q Ġ Ġä½ľèĢħ ĠE - mail : ĠĠ Ġsole ily o yi yi @ gmail . com Ċ Ġ* Ġ* Ċ Ġ* Ġ@ date ĠåĪĽå»º æĹ¶éĹ´ ï¼ļ 2 0 1 7 / 6 / 1 7 Ġ 1 6 : 0 6 Ċ Ġ* Ġ* Ġæı ı è¿° : Ċ Ġ*/ Ċ Ċ class ĠArchive Adapter ( data : ĠList < Mul Up Detail >) Ġ: ĠBase Multi Item Quick Adapter < Mul Up Detail , ĠBase ViewHolder >( data ) Ġ{ ĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġadd ItemType ( Mul Up Detail . TYPE _ ARCH IVE _ LI VE , ĠR . layout . layout _ item _ up _ detail _ archive _ live ) ĊĠĠĠĠĠĠĠ Ġadd ItemType ( Mul Up Detail . TYPE _ ARCH IVE _ HEAD , ĠR . layout . layout _ item _ up _ detail _ archive _ head ) ĊĠĠĠĠĠĠĠ Ġadd ItemType ( Mul Up Detail . TYPE _ ARCH IVE _ ALL _ SUBMIT _ VIDEO , ĠR . layout . layout _ item _ up _ detail _ archive _ submit ed _ video _ item ) ĊĠĠĠĠĠĠĠ Ġadd ItemType ( Mul Up Detail . TYPE _ ARCH IVE _ FA VO UR ITE , ĠR . layout . layout _ item _ up _ detail _ archive _ fav our ite ) ĊĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġoverride Ġfun Ġconvert ( holder : ĠBase ViewHolder , Ġmul Up Detail : ĠMul Up Detail ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( mul Up Detail . item Type ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMul Up Detail . TYPE _ ARCH IVE _ LI VE Ġ-> Ġholder . setText ( R . id . tv _ live _ state , Ġ" æŃ£åľ¨ è½® æĴŃ : Ġ${ mul Up Detail . live ?. title }") ĊĠĠĠĠĠĠĠĠĠĠĠ ĠMul Up Detail . TYPE _ ARCH IVE _ HEAD Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġspan Ġ= ĠSpan Utils () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( mul Up Detail . state Ġ== Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġspan . append ("${ mul Up Detail . title }") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append Space ( 1 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ("${ mul Up Detail . count }") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set ForegroundColor ( App Utils . getColor ( R . color . font _ gray )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append Space ( 1 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append Image ( R . drawable . ic _ invisible ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append (" æľª åħ¬ å¼Ģ ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set ForegroundColor ( App Utils . getColor ( R . color . font _ gray )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġspan . append ("${ mul Up Detail . title }") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. append ("${ mul Up Detail . count }") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set ForegroundColor ( App Utils . getColor ( R . color . font _ gray )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġholder . setText ( R . id . tv _ title , Ġspan . create ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġholder . setVisible ( R . id . tv _ more , Ġmul Up Detail . count Ġ!= Ġ 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠMul Up Detail . TYPE _ ARCH IVE _ ALL _ SUBMIT _ VIDEO // åħ¨éĥ¨ æĬķ ç¨ ¿ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmul Up Detail . archive Bean ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġholder . setText ( R . id . tv _ video _ title , Ġit . title ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setText ( R . id . tv _ video _ play _ num , ĠNumber Utils . format ("${ it . play } ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setText ( R . id . tv _ video _ fav our ite , ĠNumber Utils . format ("${ it . dan mak u } ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠG lide . with ( mContext ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. load ( it . cover ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. disk Cache Strategy ( Disk Cache Strategy . ALL ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. placeholder ( R . drawable . b ili _ default _ image _ tv ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. dont Animate () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. into ( holder . getView < ImageView >( R . id . iv _ video _ preview )) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( mul Up Detail . position Ġ% Ġ 2 Ġ== Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġparams Ġ= Ġholder . item View . layout Params Ġas ĠViewGroup . Margin LayoutParams ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġparams . set Margins ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠmContext . resources . get Dimension ( R . dim en . dp 1 0 ). toInt (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠmContext . resources . get Dimension ( R . dim en . dp 1 0 ). toInt (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠmContext . resources . get Dimension ( R . dim en . dp 5 ). toInt (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠmContext . resources . get Dimension ( R . dim en . dp 1 0 ). toInt ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġholder . item View . layout Params Ġ= Ġparams ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġparams Ġ= Ġholder . item View . layout Params Ġas ĠViewGroup . Margin LayoutParams ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġparams . set Margins ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠmContext . resources . get Dimension ( R . dim en . dp 5 ). toInt (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠmContext . resources . get Dimension ( R . dim en . dp 1 0 ). toInt (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠmContext . resources . get Dimension ( R . dim en . dp 1 0 ). toInt (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠmContext . resources . get Dimension ( R . dim en . dp 1 0 ). toInt ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġholder . item View . layout Params Ġ= Ġparams ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠMul Up Detail . TYPE _ ARCH IVE _ FA VO UR ITE Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġre cyclerView Ġ= Ġholder . getView < RecyclerView >( R . id . recycler ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġre cyclerView . set Has Fixed Size ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlayout Manager Ġ= ĠSt agger ed Grid LayoutManager ( 1 , ĠSt agger ed Grid LayoutManager . HORIZONTAL ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġre cyclerView . layout Manager Ġ= Ġlayout Manager ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmul Up Detail . fav our ite ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġre cyclerView . adapter Ġ= ĠArchive F avour ite Adapter ( it . item ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} Ċ } Ċ