package Ġcom . yu ai hen . w cd xg . base Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . os . Bundle Ċ import Ġandroid . view . View Ċ import Ġandroidx . appcompat . app . AppCompatActivity Ċ import Ġcom . blank j . util code . util . Network Utils Ċ import Ġcom . gy f . imm ersion bar . Imm ersion Bar Ċ import Ġcom . k ong z ue . dialog x . dialogs . Wait Dialog Ċ import Ġcom . k ong z ue . dialog x . interfaces . On Back Pressed Listener Ċ import Ġcom . yu ai hen . w cd xg . R Ċ import Ġcom . yu ai hen . w cd xg . common . event . Event Code Ċ import Ġcom . yu ai hen . w cd xg . utils . Log Util Ċ import Ġcom . yu ai hen . w cd xg . utils . Toast Util ĊĊ Ċ /** Ċ Ġ* ĠCreated Ġby ĠY u ai hen . Ċ Ġ* Ġon Ġ 2 0 2 0 / 1 0 / 2 8 Ċ Ġ* ĠActivity åŁº ç±» Ċ Ġ*/ Ċ abstract Ġclass ĠBase Activity Ġ: ĠAppCompatActivity () Ġ{ ĊĊĠĠĠ Ġprotected Ġopen Ġlateinit Ġvar ĠmContext : ĠContext ĊĠĠĠ Ġprivate Ġvar Ġlayout Id Ġ= Ġ 0 ĊĊĠĠĠ Ġoverride Ġfun ĠonCreate ( savedInstanceState : ĠBundle ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . onCreate ( savedInstanceState ) Ċ // ĠĠĠĠĠĠĠ ĠApp Manager . getInstance (). add Activity ( this ); ĊĠĠĠĠĠĠĠ ĠmContext Ġ= Ġthis ĊĠĠĠĠĠĠĠ Ġif Ġ( get Layout Id () Ġ> Ġ 0 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠsetContentView ( get Layout Id ()) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠsetContentView ( get Binding View ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġif Ġ(! Network Utils . isConnected ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoast ( getString ( R . string . net _ not _ connected )) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġinit Imm ersion Bar () ĊĠĠĠĠĠĠĠ Ġinit Bundle () ĊĠĠĠĠĠĠĠ Ġinit View () ĊĠĠĠĠĠĠĠ Ġinit Listener () ĊĠĠĠĠĠĠĠ Ġinit Data () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠåĪĿå§ĭåĮĸ æ² ī æµ ¸ å¼ı çĬ¶æĢģ æłı ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġprotected Ġopen Ġfun Ġinit Imm ersion Bar () Ġ{ ĊĠĠĠĠĠĠĠ ĠImm ersion Bar . with ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. transparent Bar () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. navigation Bar Alpha ( 0 f ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġ. auto Dark Mode Enable ( true ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. init () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġopen Ġfun Ġget Layout Id (): ĠInt Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġlayout Id ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġopen Ġfun Ġinit Bundle () Ġ{} ĊĊĠĠĠ Ġprotected Ġopen Ġfun Ġinit View () Ġ{} ĊĊĠĠĠ Ġprotected Ġopen Ġfun Ġinit Listener () Ġ{} ĊĊĠĠĠ Ġabstract Ġfun Ġinit Data () ĊĊĠĠĠ Ġopen Ġfun Ġget Binding View (): ĠView ? Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġnull ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġopen Ġfun Ġshow Dialog ( wait Msg : ĠString Ġ= ĠgetString ( R . string . waiting )) Ġ{ ĊĠĠĠĠĠĠĠ ĠWait Dialog . show ( wait Msg ). on Back Pressed Listener Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠOn Back Pressed Listener Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// return Ġtrue èĩªåĬ¨ åħ³éĹŃ çŃīå¾ħ / æıĲç¤º å¯¹ è¯Ŀ æ¡Ĩ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ// èĩªå®ļä¹ī å¸ĥå±Ģ Ċ // ĠĠĠĠĠĠĠ ĠWait Dialog . show ( this ) Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġ. set Custom View ( object Ġ: ĠOn BindView < Wait Dialog ? >( R . layout . dialog _ wait _ view ) Ġ{ Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Bind ( dialog : ĠWait Dialog ?, Ġv : ĠView ) Ġ{ Ċ // Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ċ // Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġ}). setOn Back Pressed Listener Ġ{ Ġtrue Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġopen Ġfun Ġhide Loading () Ġ{ ĊĠĠĠĠĠĠĠ ĠWait Dialog . dismiss () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġopen Ġfun Ġlog D ( msg : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ ĠLog Util . d ( java Class . simple Name , Ġmsg ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġopen Ġfun Ġlog D ( tag : ĠString ?, Ġmsg : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ ĠLog Util . d ( tag , Ġmsg ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġopen Ġfun Ġlog E ( msg : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ ĠLog Util . e ( java Class . simple Name , Ġmsg ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġopen Ġfun Ġtoast ( msg : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġrun On Ui Thread Ġ{ ĠToast Util . show ( msg ) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprotected Ġopen Ġfun Ġtoast ( res Id : ĠInt ) Ġ{ ĊĠĠĠĠĠĠĠ Ġrun On Ui Thread Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠToast Util . show ( res Id ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Stop () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Stop () ĊĠĠĠĠĠĠĠ Ġhide Loading () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Destroy () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Destroy () Ċ // ĠĠĠĠĠĠĠ ĠApp Manager . getInstance (). hide Soft Key Board ( this ) Ċ // ĠĠĠĠĠĠĠ ĠApp Manager . getInstance (). remove Activity ( this ); ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġinline Ġfun Ġ< re ified ĠT Ġ: ĠBase Activity > Ġstart 2 Activity ( ĊĠĠĠĠĠĠĠ Ġcls : ĠClass < T >, ĊĠĠĠĠĠĠĠ Ġbundle : ĠBundle ? Ġ= Ġnull , ĊĠĠĠĠĠĠĠ Ġfinish : ĠBoolean Ġ= Ġfalse ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( this , Ġcls ) ĊĠĠĠĠĠĠĠ Ġbundle ?. let Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġintent . put Extras ( it ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠstartActivity ( intent ) ĊĠĠĠĠĠĠĠ Ġif Ġ( finish ) Ġfinish () ĊĠĠĠ Ġ} Ċ }