package Ġcom . v ension . mvp . ui . fragments . headline Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . view . View Ċ import Ġcom . ch ad . library . adapter . base . Base Quick Adapter Ċ import Ġcom . ch ad . library . adapter . base . Base ViewHolder Ċ import Ġcom . v ension . frame . base . V _ Base Presenter Ċ import Ġcom . v ension . frame . base . V _ I Base View Ċ import Ġcom . v ension . frame . dialogs . V AlertDialog Ċ import Ġcom . v ension . frame . utils . V Obsolete Util Ċ import Ġcom . v ension . frame . utils . V Toast Util Ċ import Ġcom . v ension . mvp . R Ċ import Ġcom . v ension . mvp . base . Base Refresh M VP Fragment Ċ import Ġcom . v ension . mvp . beans . headline . Media Channel Bean Ċ import Ġcom . v ension . mvp . db . sqlite . dao . Media Channel Dao Ċ import Ġcom . v ension . mvp . ui . adapters . headline . Re cy Media Adapter Ċ import Ġcom . w uh en zh iz ao . title bar . widget . Common Title Bar Ċ import Ġio . reactivex . Back pressure Strategy Ċ import Ġio . reactivex . Flow able Ċ import Ġio . reactivex . Flow able On Subscribe Ċ import Ġio . reactivex . android . schedul ers . Android Schedulers Ċ import Ġio . reactivex . schedul ers . Schedulers ĊĊĊ Ċ /** Ċ Ġ* Ġ================================================= ======= Ċ Ġ* Ġ ä½ľ Ġ Ġ èĢħ ï¼ļ V ension Ċ Ġ* Ġ æĹ¥ Ġ Ġ æľŁ ï¼ļ 2 0 1 8 / 4 / 3 Ġ 1 3 : 2 5 Ċ Ġ* Ġæı ı Ġ Ġ è¿° ï¼ļ å¤´ æĿ¡ åı· Ċ Ġ* Ġ================================================= ======= Ċ Ġ*/ Ċ Ċ class ĠHead lineNum Fragment Ġ: ĠBase Refresh M VP Fragment < Media Channel Bean , ĠV _ Base Presenter < V _ I Base View >> (), ĠV _ I Base View Ġ{ ĊĊĠĠĠ Ġprivate Ġval ĠTAG Ġ= Ġ" Media Channel View " ĊĠĠĠ Ġprivate Ġval Ġis First Time Ġ= Ġ" is First Time " ĊĠĠĠ Ġprivate Ġval Ġdao Ġby Ġlazy { ĠMedia Channel Dao () Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinit ToolBar ( m Common Title Bar : ĠCommon Title Bar ) Ġ{ ĊĠĠĠĠĠĠĠ Ġm Common Title Bar . set BackgroundColor ( V Obsolete Util . getColor ( R . color . color _ new _ main )) ĊĠĠĠĠĠĠĠ Ġm Common Title Bar . left Image Button . visibility Ġ= ĠView . GONE ĊĠĠĠĠĠĠĠ Ġm Common Title Bar . center TextView . text Ġ= Ġ" å¤´ æĿ¡ åı· " ĊĠĠĠĠĠĠĠ Ġm Common Title Bar . center TextView . setTextColor ( V Obsolete Util . getColor ( R . color . white )) ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġoverride Ġfun Ġinit Refresh Fragment () Ġ{ ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġcreate Presenter (): ĠV _ Base Presenter < V _ I Base View > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠV _ Base Presenter () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġcreate Common Re cy Adapter (): ĠBase Quick Adapter < Media Channel Bean , ĠBase ViewHolder > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠRe cy Media Adapter () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġadd ItemClickListener ( m Adapter : ĠBase Quick Adapter < Media Channel Bean , ĠBase ViewHolder >) Ġ{ ĊĠĠĠĠĠĠĠ Ġm Adapter . setOn ItemClickListener Ġ{ Ġadapter , Ġview , Ġposition Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġitem Ġ: ĠMedia Channel Bean Ġ= Ġm Adapter ?. getItem ( position ) Ġas ĠMedia Channel Bean ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm Bundle ?. putString (" media Id ", item . id ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġstart Agent Activity () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠV Toast Util . show Success (" è¿Ľåħ¥ å¤´ æĿ¡ åı· ") ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġm Adapter . on Item Long ClickListener Ġ= ĠBase Quick Adapter . On Item Long ClickListener Ġ{ Ġadapter , Ġview , Ġposition Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġitem 2 Ġ: ĠMedia Channel Bean Ġ= Ġm Adapter ?. getItem ( position ) Ġas ĠMedia Channel Bean ĊĠĠĠĠĠĠĠĠĠĠĠ ĠV AlertDialog ( activity ). builder () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setTitle (" åıĸæ¶Ī è®¢ éĺħ ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. setContent (" ç¡®å®ļ åıĸæ¶Ī è®¢ éĺħ \" Ġ" Ġ+ Ġitem 2 . name Ġ+ Ġ" Ġ\" ?") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Positive Button (" ç¡®å®ļ ", ĠV Obsolete Util . getColor ( R . color . Color _ ff 9 7 3 4 ), Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠThread Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdao . delete ( item 2 . id ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠsetData () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}. start () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Negative Button (" åıĸæ¶Ī ", Ġ{}) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. show () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon T arger Request Api ( is Refresh ing : ĠBoolean , Ġpage : ĠInt , Ġlimit : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġeditor Ġ= Ġactivity ?. get SharedPreferences ( TAG , ĠContext . MODE _ PRIVATE ) ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġeditor ?. getBoolean ( is First Time , Ġtrue ) ĊĠĠĠĠĠĠĠ Ġif Ġ( result !! ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdao . init Data () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġeditor . edit (). put Boolean ( is First Time , Ġfalse ). apply () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġadd Item Data ( true , Ġdao . query All ()) ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġprivate Ġfun ĠsetData () Ġ{ ĊĠĠĠĠĠĠĠ ĠFlow able . create ( Flow able On Subscribe < List < Media Channel Bean >> Ġ{ Ġemitter Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// æī§è¡Į ä¸ĢäºĽ åħ¶ä»ĸ æĵįä½ľ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġlist : ĠList < Media Channel Bean > Ġ= Ġdao . query All () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// æī§è¡Į å®Į æ¯ķ ï¼Į è§¦åıĳ åĽŀè°ĥ ï¼Į éĢļçŁ¥ è§Ĥ å¯Ł èĢħ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġemitter . onNext ( list ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġemitter . onComplete () ĊĠĠĠĠĠĠĠ Ġ}, ĠBack pressure Strategy . ERROR ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe On ( Schedulers . io ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. observe On ( Android Schedulers . main Thread ()) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. subscribe ({ Ġlist Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadd Item Data ( true , Ġlist ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġoverride Ġfun Ġhas Load More (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠ Ġ} Ċ Ċ }