package Ġcom . ld l . wan android pro . view model . main Ċ Ċ import Ġandroidx . lifecycle . Mutable LiveData Ċ import Ġandroidx . lifecycle . rx Life Scope Ċ import Ġcom . blank j . r xb us . Rx Bus Ċ import Ġcom . ld l . wan android pro . base . view model . Base ViewModel Ċ import Ġcom . ld l . wan android pro . core . DataManager Ċ import Ġcom . ld l . wan android pro . core . model . event . Event Msg Ċ import Ġcom . ld l . wan android pro . util . Rx Bus Manager Ċ import Ġcom . ld l . wan android pro . view model . main . repository . Main Repository Ċ Ċ /** Ċ Ġ* Ġä½ľèĢħ ï¼ļ L DL ĠåĪĽå»º æĹ¶éĹ´ ï¼ļ 2 0 2 0 / 5 / 2 0 Ċ Ġ* Ġ ç±» è¯´æĺİ ï¼ļ Ċ Ġ*/ Ċ class ĠMain ViewModel ( private Ġval Ġm Repository : ĠMain Repository ) Ġ: ĠBase ViewModel () Ġ{ ĊĊĠĠĠ Ġvar ĠisLoading Ġ= ĠMutable LiveData < Boolean >() ĊĊĠĠĠ Ġvar Ġis Logout Ġ= ĠMutable LiveData < Boolean >() ĊĊĠĠĠ Ġvar Ġevent Msg Ġ= ĠMutable LiveData < String >() ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ ĠRx Bus Manager . subscribe ( this , Ġobject Ġ: ĠRx Bus . Callback < Event Msg >() Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoverride Ġfun Ġon Event ( t : ĠEvent Msg ?) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( t ?. code Ġ== ĠEvent Msg . LOGIN ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġevent Msg . value Ġ= Ġt . msg ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġlogout () Ġ{ ĊĠĠĠĠĠĠĠ Ġrx Life Scope . launch ({ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġm Repository . logout () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠData Manager . set Account ("") ĊĠĠĠĠĠĠĠĠĠĠĠ ĠData Manager . set Password ("") ĊĠĠĠĠĠĠĠĠĠĠĠ ĠData Manager . set Login Status ( false ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠRx Bus Manager . post ( Event Msg ( Event Msg . LOGIN , Ġ" logout ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Logout . value Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġ}, Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Logout . value Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġ}, Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠisLoading . value Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġ}, Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠisLoading . value Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġoverride Ġfun Ġon Cle ared () Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . on Cle ared () ĊĠĠĠĠĠĠĠ ĠRx Bus Manager . unregister ( this ) ĊĠĠĠ Ġ} Ċ }