From 3a154bdb0a5aaa2c0ac3eac95a6ba747068bd454 Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期二, 13 一月 2026 10:00:37 +0800
Subject: [PATCH] 优化

---
 keyCabinet-android/lib_coremodel/src/main/java/com/doumee/lib_coremodel/base/BaseViewModel.java |  508 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 508 insertions(+), 0 deletions(-)

diff --git a/keyCabinet-android/lib_coremodel/src/main/java/com/doumee/lib_coremodel/base/BaseViewModel.java b/keyCabinet-android/lib_coremodel/src/main/java/com/doumee/lib_coremodel/base/BaseViewModel.java
new file mode 100644
index 0000000..8b49bc5
--- /dev/null
+++ b/keyCabinet-android/lib_coremodel/src/main/java/com/doumee/lib_coremodel/base/BaseViewModel.java
@@ -0,0 +1,508 @@
+package com.doumee.lib_coremodel.base;
+
+import android.app.Application;
+import android.os.Bundle;
+import android.os.Message;
+import android.view.View;
+
+import androidx.annotation.MainThread;
+import androidx.annotation.NonNull;
+import androidx.annotation.StringRes;
+import androidx.databinding.ObservableField;
+import androidx.databinding.ObservableInt;
+import androidx.hilt.lifecycle.ViewModelInject;
+import androidx.lifecycle.AndroidViewModel;
+import androidx.lifecycle.Lifecycle;
+import androidx.lifecycle.LifecycleOwner;
+import androidx.lifecycle.MutableLiveData;
+import androidx.lifecycle.Observer;
+
+import com.doumee.lib_coremodel.base.livedata.ActionEvent;
+import com.doumee.lib_coremodel.base.livedata.MessageEvent;
+import com.doumee.lib_coremodel.base.livedata.SingleLiveEvent;
+import com.doumee.lib_coremodel.base.livedata.StatusEvent;
+import com.doumee.lib_coremodel.bean.event.ActionEventData;
+import com.doumee.lib_coremodel.binding.command.BindingAction;
+import com.doumee.lib_coremodel.binding.command.BindingCommand;
+import com.doumee.lib_coremodel.binding.command.BindingConsumer;
+import com.doumee.lib_coremodel.http.rxJava.RxJavaGcManager;
+
+import java.util.HashMap;
+
+
+/**
+ * MVVMFrame 妗嗘灦鍩轰簬Google瀹樻柟鐨� JetPack 鏋勫缓锛屽湪浣跨敤MVVMFrame鏃讹紝闇�閬靛惊涓�浜涜鑼冿細
+ *
+ * 濡傛灉鎮ㄧ户鎵夸娇鐢ㄤ簡BaseViewModel鎴栧叾瀛愮被锛屼綘闇�瑕佸弬鐓у涓嬫柟寮忓湪鏋勯�犲嚱鏁颁笂娣诲姞@ViewModelInject娉ㄨВ
+ *
+ * @example BaseViewModel
+ * //-------------------------
+ *    public class YourViewModel extends BaseViewModel<YourModel> {
+ *        @ViewModelInject
+ *        public DataViewModel(@NonNull Application application, YourModel model) {
+ *            super(application, model);
+ *        }
+ *    }
+ * //-------------------------
+ *
+ * 濡傛灉鎮ㄧ户鎵夸娇鐢ㄤ簡BaseModel鎴栧叾瀛愮被锛屼綘闇�瑕佸弬鐓у涓嬫柟寮忓湪鏋勯�犲嚱鏁颁笂娣诲姞@Inject娉ㄨВ
+ *
+ * @example BaseModel
+ * //-------------------------
+ *    public class YourModel extends BaseModel {
+ *        @Inject
+ *        public BaseModel(IDataRepository dataRepository){
+ *            super(dataRepository);
+ *        }
+ *    }
+ * //-------------------------
+ *
+ *
+ * 鏍囧噯MVVM妯″紡涓殑VM (ViewModel)灞傚熀绫�
+ * @author <a href="mailto:jenly1314@gmail.com">Jenly</a>
+ */
+public class BaseViewModel<M extends BaseModel> extends AndroidViewModel implements IViewModel {
+
+    public ObservableField<String> title=new ObservableField<>("121");
+    public ObservableField<String> saveStr=new ObservableField<>("淇濆瓨");
+    /**
+     * 鏄剧ず淇濆瓨
+     * */
+    public ObservableInt saveStrvisibility = new ObservableInt(View.GONE);
+    /**
+     * 鍒板簳
+     */
+    public ObservableInt loadMoreVisibility = new ObservableInt(View.GONE); /**
+     * 鏃犳暟鎹�
+     */
+    public ObservableInt emptyVisibility = new ObservableInt(View.VISIBLE);
+    public RxJavaGcManager rxJavaGcManager;//缃戠粶璇锋眰鐢熷懡鎺у埗
+    protected String tag;
+
+    /**
+     * 杩斿洖浜嬩欢
+     * */
+    public BindingCommand backOnClickCommand=new BindingCommand(new BindingAction() {
+        @Override
+        public void call() {
+            backOnClickCommand();
+        }
+    });
+    /**
+     * 淇濆瓨浜嬩欢
+     * */
+    public BindingCommand saveOnClickCommand=new BindingCommand(new BindingAction() {
+        @Override
+        public void call() {
+            saveOnClickCommand();
+        }
+    });
+    public void backOnClickCommand(){
+        finish();
+    }
+    public void saveOnClickCommand(){
+
+    }
+
+    public BindingCommand myTypeCommand = new BindingCommand(new BindingConsumer<Integer>() {
+        @Override
+        public void call(Integer type) {
+            clickByTypeCommand(type);
+        }
+    });
+
+    protected void clickByTypeCommand(int type){
+
+    }
+
+    public String getTag() {
+        return tag;
+    }
+
+    public void setTag(String tag) {
+        this.tag = tag;
+    }
+
+    private LifecycleOwner lifecycleOwner;
+
+    /**
+     * 璇烽�氳繃 {@link #getModel()} 鑾峰彇锛屽悗缁増鏈� {@link #mModel}鍙兘浼氱鏈夊寲
+     */
+    private M mModel;
+
+    /**
+     * 鍔ㄤ綔浜嬩欢
+     */
+    private ActionEvent actionEvent = new ActionEvent();
+
+    /**
+     * 娑堟伅浜嬩欢
+     */
+    private MessageEvent mMessageEvent = new MessageEvent();
+
+    /**
+     * 鐘舵�佷簨浠�
+     */
+    private StatusEvent mStatusEvent = new StatusEvent();
+
+    /**
+     * 鍔犺浇鐘舵��
+     */
+    private SingleLiveEvent<Boolean> mLoadingEvent = new SingleLiveEvent<>();
+
+    /**
+     * 鎻愪緵鑷畾涔夊崟涓�娑堟伅浜嬩欢
+     */
+    private SingleLiveEvent<Message> mSingleLiveEvent  = new SingleLiveEvent<>();
+
+    /**
+     * 缁ф壙鑰呴兘灏嗕娇鐢ㄦ鏋勯��
+     * @param application
+     * @param model
+     */
+    public BaseViewModel(@NonNull Application application, M model) {
+        super(application);
+        this.mModel = model;
+        rxJavaGcManager=new RxJavaGcManager();
+    }
+
+    /**
+     * 鐗规畩鏋勯�狅紝浠呬緵鍐呴儴浣跨敤
+     * 涓轰簡婊¤冻@ViewModelInject娉ㄨВ
+     * @param application
+     */
+    @ViewModelInject
+    BaseViewModel(@NonNull Application application) {
+        super(application);
+
+    }
+
+    @Override
+    public void onCreate() {
+
+    }
+
+    @Override
+    public void onStart() {
+
+    }
+
+    @Override
+    public void onResume() {
+
+    }
+
+    @Override
+    public void onPause() {
+
+    }
+
+    @Override
+    public void onStop() {
+
+    }
+
+    @Override
+    public void onDestroy() {
+        if(mModel != null){
+            mModel.onDestroy();
+            mModel = null;
+        }
+        rxJavaGcManager.disposableActives();
+    }
+
+    @Override
+    public void onAny(LifecycleOwner owner, Lifecycle.Event event) {
+
+    }
+
+    public void finish(){
+        actionEvent.setValue(new ActionEventData(ActionEvent.Action.FINISH,new HashMap<>()));
+    }
+
+    public void toast(String msg){
+        actionEvent.setValue(new ActionEventData(ActionEvent.Action.TOAST,"toast",msg));
+    }
+
+    public void doAction(int type){
+        actionEvent.setValue(new ActionEventData(type));
+    }
+
+    public void doAction(int type,String obj){
+        actionEvent.setValue(new ActionEventData(type,obj));
+    }
+
+    public LifecycleOwner getLifecycleOwner() {
+        return lifecycleOwner;
+    }
+
+    public void setLifecycleOwner(LifecycleOwner lifecycleOwner) {
+        this.lifecycleOwner = lifecycleOwner;
+    }
+
+    /**
+     * {@link M}
+     * @return {@link #mModel}
+     */
+    public M getModel(){
+        return this.mModel;
+    }
+
+    public ActionEvent getActionEvent() {
+        return actionEvent;
+    }
+
+    public void updateAction(ActionEventData data, boolean post){
+        if(post){
+            actionEvent.postValue(data);
+        }else{
+            actionEvent.setValue(data);
+        }
+    }
+
+    public void startActivity(Class<?> cla, Bundle bundle){
+        HashMap<String,Object> hashMap=new HashMap<>();
+        hashMap.put(ActionEvent.ParameterField.CLASS,cla);
+        if(bundle!=null){
+            hashMap.put(ActionEvent.ParameterField.BUNDLE,bundle);
+        }
+        updateAction(new ActionEventData(ActionEvent.Action.START_ACTIVITY,hashMap),false);
+    }
+
+    public void startActivity(Class<?> cla){
+        HashMap<String,Object> hashMap=new HashMap<>();
+        hashMap.put(ActionEvent.ParameterField.CLASS,cla);
+        updateAction(new ActionEventData(ActionEvent.Action.START_ACTIVITY,hashMap),false);
+    }
+
+    /**
+     *  鏆撮湶缁欒瀵熻�呮彁渚涘姞杞戒簨浠讹紝{@link BaseActivity} 鎴� {@link BaseFragment} 宸查粯璁ゆ敞鍐屽姞杞戒簨浠讹紝
+     *  鍙渶璋冪敤{@link #showLoading()} 鎴� {@link #hideLoading()}鍗冲彲鍦▄@link BaseActivity}
+     *  鎴� {@link BaseFragment} 涓敹鍒拌闃呬簨浠�
+     * @return {@link #mLoadingEvent}
+     */
+    public SingleLiveEvent<Boolean> getLoadingEvent(){
+        return mLoadingEvent;
+    }
+
+    /**
+     * 鏆撮湶缁欒瀵熻�呮彁渚涙秷鎭簨浠讹紝閫氳繃娉ㄥ唽{@link BaseActivity#registerMessageEvent(MessageEvent.MessageObserver)}鎴�
+     * {@link BaseFragment#registerMessageEvent(MessageEvent.MessageObserver)} 鎴�
+     * {@link BaseDialogFragment#registerMessageEvent(MessageEvent.MessageObserver)}鎺ユ敹娑堟伅浜嬩欢
+     * @return {@link #mMessageEvent}
+     */
+    public MessageEvent getMessageEvent(){
+        return mMessageEvent;
+    }
+
+    /**
+     * 鏆撮湶缁欒瀵熻�呮彁渚涚姸鎬佸彉鍖栦簨浠讹紝閫氳繃娉ㄥ唽{@link BaseActivity#registerStatusEvent(StatusEvent.StatusObserver)}鎴�
+     * {@link BaseFragment#registerStatusEvent(StatusEvent.StatusObserver)} 鎴�
+     * {@link BaseDialogFragment#registerStatusEvent(StatusEvent.StatusObserver)}鎺ユ敹娑堟伅浜嬩欢
+     * @return {@link #mStatusEvent}
+     */
+    public StatusEvent getStatusEvent(){
+        return mStatusEvent;
+    }
+
+    /**
+     * 鏆撮湶缁欒瀵熻�呮彁渚涙帴鏀跺崟涓秷鎭簨浠讹紝閫氳繃娉ㄥ唽{@link BaseActivity#registerSingleLiveEvent(Observer)}鎴�
+     * {@link BaseFragment#registerSingleLiveEvent(Observer)} 鎴�
+     * {@link BaseDialogFragment#registerSingleLiveEvent(Observer)}鎺ユ敹娑堟伅浜嬩欢
+     * @return {@link #mSingleLiveEvent}
+     */
+    public SingleLiveEvent<Message> getSingleLiveEvent(){
+        return mSingleLiveEvent;
+    }
+
+    /**
+     * 鍙戦�佹秷鎭紝閫氳繃娉ㄥ唽{@link BaseActivity#registerMessageEvent(MessageEvent.MessageObserver)}鎴�
+     * {@link BaseFragment#registerMessageEvent(MessageEvent.MessageObserver)} 鎴�
+     * {@link BaseDialogFragment#registerMessageEvent(MessageEvent.MessageObserver)}鎺ユ敹娑堟伅浜嬩欢锛�
+     * 涔熷彲閫氳繃瑙傚療{@link #getMessageEvent()}鎺ユ敹娑堟伅浜嬩欢
+     * @param msgId 璧勬簮鏂囦欢id
+     */
+    @MainThread
+    public void sendMessage(@StringRes int msgId) {
+        sendMessage(msgId,false);
+    }
+
+    /**
+     * 鍙戦�佹秷鎭紝閫氳繃娉ㄥ唽{@link BaseActivity#registerMessageEvent(MessageEvent.MessageObserver)}鎴�
+     * {@link BaseFragment#registerMessageEvent(MessageEvent.MessageObserver)} 鎴�
+     * {@link BaseDialogFragment#registerMessageEvent(MessageEvent.MessageObserver)}鎺ユ敹娑堟伅浜嬩欢锛�
+     * 涔熷彲閫氳繃瑙傚療{@link #getMessageEvent()}鎺ユ敹娑堟伅浜嬩欢
+     * @param msgId 璧勬簮鏂囦欢id
+     * @param post 濡傛灉涓簕@code true}鍒欏彲浠ュ湪瀛愮嚎绋嬭皟鐢紝鐩稿綋浜庤皟鐢▄@link MutableLiveData#postValue(Object)}锛�
+     *             濡傛灉涓簕@code false} 鐩稿綋浜庤皟鐢▄@link MutableLiveData#setValue(Object)}
+     */
+    public void sendMessage(@StringRes int msgId, boolean post) {
+        sendMessage(getApplication().getString(msgId),post);
+    }
+
+    /**
+     * 鍙戦�佹秷鎭紝閫氳繃娉ㄥ唽{@link BaseActivity#registerMessageEvent(MessageEvent.MessageObserver)}鎴�
+     * {@link BaseFragment#registerMessageEvent(MessageEvent.MessageObserver)} 鎴�
+     * {@link BaseDialogFragment#registerMessageEvent(MessageEvent.MessageObserver)}鎺ユ敹娑堟伅浜嬩欢锛�
+     * 涔熷彲閫氳繃瑙傚療{@link #getMessageEvent()}鎺ユ敹娑堟伅浜嬩欢
+     * @param message 娑堟伅鍐呭
+     */
+    @MainThread
+    public void sendMessage(String message){
+        mMessageEvent.setValue(message);
+    }
+
+    /**
+     * 鍙戦�佹秷鎭紝閫氳繃娉ㄥ唽{@link BaseActivity#registerMessageEvent(MessageEvent.MessageObserver)}鎴�
+     * {@link BaseFragment#registerMessageEvent(MessageEvent.MessageObserver)} 鎴�
+     * {@link BaseDialogFragment#registerMessageEvent(MessageEvent.MessageObserver)}鎺ユ敹娑堟伅浜嬩欢锛�
+     * 涔熷彲閫氳繃瑙傚療{@link #getMessageEvent()}鎺ユ敹娑堟伅浜嬩欢
+     * @param message 娑堟伅鍐呭
+     * @param post 濡傛灉涓簕@code true}鍒欏彲浠ュ湪瀛愮嚎绋嬭皟鐢紝鐩稿綋浜庤皟鐢▄@link MutableLiveData#postValue(Object)}锛�
+     *             濡傛灉涓簕@code false} 鐩稿綋浜庤皟鐢▄@link MutableLiveData#setValue(Object)}
+     */
+    public void sendMessage(String message, boolean post){
+        if(post){
+            mMessageEvent.postValue(message);
+        }else{
+            mMessageEvent.setValue(message);
+        }
+    }
+
+
+    /**
+     * 鏇存柊鐘舵�侊紝閫氳繃娉ㄥ唽{@link BaseActivity#registerStatusEvent(StatusEvent.StatusObserver)}鎴�
+     * {@link BaseFragment#registerStatusEvent(StatusEvent.StatusObserver)} 鎴�
+     * {@link BaseDialogFragment#registerStatusEvent(StatusEvent.StatusObserver)}鎺ユ敹娑堟伅浜嬩欢锛�
+     * 涔熷彲閫氳繃瑙傚療{@link #getStatusEvent()}鎺ユ敹娑堟伅浜嬩欢
+     * @param status
+     */
+    @MainThread
+    public void updateStatus(@StatusEvent.Status int status){
+        updateStatus(status,false);
+    }
+
+    /**
+     * 鏇存柊鐘舵�侊紝閫氳繃娉ㄥ唽{@link BaseActivity#registerStatusEvent(StatusEvent.StatusObserver)}鎴�
+     * {@link BaseFragment#registerStatusEvent(StatusEvent.StatusObserver)} 鎴�
+     * {@link BaseDialogFragment#registerStatusEvent(StatusEvent.StatusObserver)}鎺ユ敹娑堟伅浜嬩欢锛�
+     * 涔熷彲閫氳繃瑙傚療{@link #getStatusEvent()}鎺ユ敹娑堟伅浜嬩欢
+     * @param status
+     * @param post 濡傛灉涓簕@code true}鍒欏彲浠ュ湪瀛愮嚎绋嬭皟鐢紝鐩稿綋浜庤皟鐢▄@link MutableLiveData#postValue(Object)}锛�
+     *             濡傛灉涓簕@code false} 鐩稿綋浜庤皟鐢▄@link MutableLiveData#setValue(Object)}
+     */
+    public void updateStatus(@StatusEvent.Status int status, boolean post){
+        if(post){
+            mStatusEvent.postValue(status);
+        }else{
+            mStatusEvent.setValue(status);
+        }
+    }
+
+    /**
+     * 鍙戦�佸崟涓秷鎭簨浠讹紝娑堟伅涓簕@link Message}瀵硅薄锛屽彲閫氳繃{@link Message#what}鍖哄垎娑堟伅绫诲瀷锛岀敤娉曚笌{@link Message}涓�鑷达紝
+     * 閫氳繃娉ㄥ唽{@link BaseActivity#registerSingleLiveEvent(Observer)}鎴�
+     * {@link BaseFragment#registerSingleLiveEvent(Observer)} 鎴�
+     * {@link BaseDialogFragment#registerSingleLiveEvent(Observer)}鎺ユ敹娑堟伅浜嬩欢锛�
+     * 涔熷彲閫氳繃瑙傚療{@link #getSingleLiveEvent()}鎺ユ敹娑堟伅浜嬩欢
+     * @param what
+     */
+    @MainThread
+    public void sendSingleLiveEvent(int what){
+        sendSingleLiveEvent(what,false);
+    }
+
+    /**
+     * 鍙戦�佸崟涓秷鎭簨浠讹紝娑堟伅涓簕@link Message}瀵硅薄锛屽彲閫氳繃{@link Message#what}鍖哄垎娑堟伅绫诲瀷锛岀敤娉曚笌{@link Message}涓�鑷达紝
+     * 閫氳繃娉ㄥ唽{@link BaseActivity#registerSingleLiveEvent(Observer)}鎴�
+     * {@link BaseFragment#registerSingleLiveEvent(Observer)} 鎴�
+     * {@link BaseDialogFragment#registerSingleLiveEvent(Observer)}鎺ユ敹娑堟伅浜嬩欢锛�
+     * 涔熷彲閫氳繃瑙傚療{@link #getSingleLiveEvent()}鎺ユ敹娑堟伅浜嬩欢
+     * @param what
+     * @param post 濡傛灉涓簕@code true}鍒欏彲浠ュ湪瀛愮嚎绋嬭皟鐢紝鐩稿綋浜庤皟鐢▄@link MutableLiveData#postValue(Object)}锛�
+     *             濡傛灉涓簕@code false} 鐩稿綋浜庤皟鐢▄@link MutableLiveData#setValue(Object)}
+     */
+    public void sendSingleLiveEvent(int what, boolean post){
+        Message message = Message.obtain();
+        message.what = what;
+        sendSingleLiveEvent(message,post);
+    }
+
+    /**
+     * 鍙戦�佸崟涓秷鎭簨浠讹紝娑堟伅涓簕@link Message}瀵硅薄锛屽彲閫氳繃{@link Message#what}鍖哄垎娑堟伅绫诲瀷锛岀敤娉曚笌{@link Message}涓�鑷达紝
+     * 閫氳繃娉ㄥ唽{@link BaseActivity#registerSingleLiveEvent(Observer)}鎴�
+     * {@link BaseFragment#registerSingleLiveEvent(Observer)} 鎴�
+     * {@link BaseDialogFragment#registerSingleLiveEvent(Observer)}鎺ユ敹娑堟伅浜嬩欢锛�
+     * 涔熷彲閫氳繃瑙傚療{@link #getSingleLiveEvent()}鎺ユ敹娑堟伅浜嬩欢
+     * @param message
+     */
+    @MainThread
+    public void sendSingleLiveEvent(Message message){
+        sendSingleLiveEvent(message,false);
+    }
+
+    /**
+     * 鍙戦�佸崟涓秷鎭簨浠讹紝娑堟伅涓簕@link Message}瀵硅薄锛屽彲閫氳繃{@link Message#what}鍖哄垎娑堟伅绫诲瀷锛岀敤娉曚笌{@link Message}涓�鑷达紝
+     * 閫氳繃娉ㄥ唽{@link BaseActivity#registerSingleLiveEvent(Observer)}鎴�
+     * {@link BaseFragment#registerSingleLiveEvent(Observer)} 鎴�
+     * {@link BaseDialogFragment#registerSingleLiveEvent(Observer)}鎺ユ敹娑堟伅浜嬩欢锛�
+     * 涔熷彲閫氳繃瑙傚療{@link #getSingleLiveEvent()}鎺ユ敹娑堟伅浜嬩欢
+     * @param message
+     * @param post 濡傛灉涓簕@code true}鍒欏彲浠ュ湪瀛愮嚎绋嬭皟鐢紝鐩稿綋浜庤皟鐢▄@link MutableLiveData#postValue(Object)}锛�
+     *             濡傛灉涓簕@code false} 鐩稿綋浜庤皟鐢▄@link MutableLiveData#setValue(Object)}
+     */
+    public void sendSingleLiveEvent(Message message, boolean post){
+        if(post){
+            mSingleLiveEvent.postValue(message);
+        }else{
+            mSingleLiveEvent.setValue(message);
+        }
+    }
+
+    /**
+     * 璋冪敤姝ょ被浼氬悓姝ラ�氱煡鎵ц{@link BaseActivity#showLoading()}鎴杮@link BaseFragment#showLoading()}鎴�
+     * {@link BaseDialogFragment#showLoading()}
+     */
+    @MainThread
+    public void showLoading() {
+        showLoading(true);
+    }
+
+    /**
+     * 璋冪敤姝ょ被浼氬悓姝ラ�氱煡鎵ц{@link BaseActivity#showLoading()}鎴杮@link BaseFragment#showLoading()}鎴�
+     * {@link BaseDialogFragment#showLoading()}
+     */
+    public void showLoading(boolean post) {
+        if(post){
+            mLoadingEvent.postValue(true);
+        }else{
+            mLoadingEvent.setValue(true);
+        }
+    }
+
+    /**
+     * 璋冪敤姝ょ被浼氬悓姝ラ�氱煡鎵ц{@link BaseActivity#hideLoading()}鎴杮@link BaseFragment#hideLoading()}鎴�
+     * {@link BaseDialogFragment#hideLoading()}
+     */
+    @MainThread
+    public void hideLoading() {
+        hideLoading(false);
+    }
+
+
+    /**
+     * 璋冪敤姝ょ被浼氬悓姝ラ�氱煡鎵ц{@link BaseActivity#hideLoading()}鎴杮@link BaseFragment#hideLoading()}鎴�
+     * {@link BaseDialogFragment#hideLoading()}
+     * @param post 濡傛灉涓簕@code true}鍒欏彲浠ュ湪瀛愮嚎绋嬭皟鐢紝鐩稿綋浜庤皟鐢▄@link MutableLiveData#postValue(Object)}锛�
+     *             濡傛灉涓簕@code false} 鐩稿綋浜庤皟鐢▄@link MutableLiveData#setValue(Object)}
+     */
+    public void hideLoading(boolean post) {
+        if(post){
+            mLoadingEvent.postValue(false);
+        }else{
+            mLoadingEvent.setValue(false);
+        }
+    }
+
+
+}

--
Gitblit v1.9.3